Yii 嵌套资源

Yii 嵌套资源,yii,Yii,我坚持使用一种方法并使用Yii框架 我的网站有4个部分(组、页面、事件、照片),有些部分可能包含其他部分,即我可以有: / pages/1/groups/4 / pages/1/groups/4/events/5 / pages/1/groups/4/events/5/photos / groups/6/events/7/photos / groups/6/photos 模型为4(组、页面、照片、事件),由名为container\u guid的字段链接。如何重用每个部分的控制器和视图?重用视图

我坚持使用一种方法并使用Yii框架

我的网站有4个部分(组、页面、事件、照片),有些部分可能包含其他部分,即我可以有:

/ pages/1/groups/4
/ pages/1/groups/4/events/5
/ pages/1/groups/4/events/5/photos
/ groups/6/events/7/photos
/ groups/6/photos

模型为4(组、页面、照片、事件),由名为container\u guid的字段链接。如何重用每个部分的控制器和视图?

重用视图:

$this->render('/controller_id/view_id')
这样,您可以调用其他控制器的视图

虽然我听说旧版本中没有这个功能

重新使用控制器:

$this->render('/controller_id/view_id')
您可以在控制器中调用forward函数,将请求转发给另一个控制器的操作

通过这种方式,您可以将任务委托给其他控制器的操作。阅读此函数的详细信息


为什么要重用控制器?如果它们是不同的数据类型,我认为它们应该有单独的控制器/视图。另一方面,您可能希望使用多种方法为来自一个控制器的所有内容提供服务。通常,一切都取决于您当前的项目。请提供更多详细信息。我希望重用管理每个模型的控制器,例如/pages/1/groups/4/events/5->PageGroupEventController和/groups/6/events/7->GroupEventController,这两个控制器具有相同的方法。