除了索引、查看、添加、编辑、删除之外,还有什么更好的方法来烘焙其他常见操作(如启用、上移、下移等)?有没有我在手册中遗漏的技巧?或者正确的方法是通过创建分支来修改 CAKE/vendor/cakephp/bake/src/Shell/Task/ControllerTask.php?
1 回答
2
在 irc.freenode.net 的 #cakephp chanell 中 jose_zap 的建议和一些实验之后,我找到了解决方案。
1) 复制
APP/vendor/cakephp/bake/src/Template/Bake/Controller/controller.ctp
到我的插件为
APP/plugins/MY_PLUGIN/src/Template/Bake/Controller/controller.ctp
2)修改以下行(注释原始动作解析并添加我自己的):
// foreach($actions as $action) {
// echo $this->element('Controller/' . $action);
// }
$themeActions = ['index', 'view', 'add', 'edit', 'delete', 'moveup','movedown', 'recover', 'enable', 'disable', 'copy'];
foreach($themeActions as $action) {
echo $this->element($this->theme.'.Controller/' . $action);
}
3)复制所有文件
APP/vendor/cakephp/bake/src/Template/Bake/Element/Controller/*
至
APP/plugins/Tools/src/Template/Bake/Element/Controller/*
并添加我自己的操作(如“moveup”、“movedown”、“recover”、“enable”、“disable”、“copy”等)
就这样。
于 2015-05-10T05:56:56.220 回答