我第一次在CakePHP工作。我需要为单个控制器创建多个视图<我有一张设置表。
1.ID
2。名称
3。类型
我用蛋糕烘焙创建了它的模型和控制器。但是我有多个视图,从那里的数据进入设置表。我的指定、部门、资格、项目和许多其他东西的数据进入设置表的类型字段,输入它们的名称。
因此,当我通过蛋糕烘焙创建模型和控制器时,它根据设置表创建视图,而我需要根据类型查看页面,即创建指定、创建部门、创建项目以及查看、编辑和删除文件。
请帮我找到一个实现这一目标的方法。。
我想你是在找
$this->render('viewfilename');
根据需要创建任意多个视图,然后从控制器在特定视图中发送。
例如:
public function add($type) {
if ($this->request->is('post')) {
...
}
$this->set(............);
switch ($type) {
case 'designations':
$this->render('add_designations');
break;
case 'departments':
$this->render('add_departments');
break;
case 'qualifications':
$this->render('add_qualifications');
break;
}
}
并使视图文件add_designations.ctp,add_departments.ctp,add_qualifications.ctp等。
可以通过创建视图来添加视图。相应视图文件夹中的ctp文件(视图/“Modelname”/add_department.ctp)
在“Modelname”控制器中,只需添加
function addDepartment() {
// Logic here
}
但是如果您只想设置类型,您可以创建一个普通的add.ctp并创建一个包含所有不同可能类型的选择框。
您需要再次阅读模式模型视图控制器(MVC)是如何工作的。
如果要创建新部门,可能需要使用与部门
模型关联的部门控制器
。
在每个控制器中,您将有与其关联的操作。这样,Cake Bake将为每个控制器生成添加
、删除
和编辑
代码。
当然,您可以在自己喜欢的控制器中使用您希望的模型创建它们。但不要指望蛋糕烘焙会有不同的效果:)