2

我想知道如何在仅访问一个控制器(在 Yii 框架中)的同时呈现多个控制器方法。因此,例如在浏览器中调用“controller/SiteController.php”(方法“actionIndex”)。

  • Witch 首先渲染“controller/UserController.php”的输出(方法“actionDetails”->“views/user/details.php”)。
  • 之后还会为页面的其余部分呈现“controller/SiteController.php”(方法“actionIndex”->“views/site/index.php”)的输出。

希望有人可以帮忙?我对 Yii 还是有点陌生​​。提前致谢。

4

1 回答 1

3

可以做到,毕竟动作也是函数不是吗..所以我们可以调用它..

在渲染后的第一个操作中。创建所需控制器的实例,在您的情况下为 SiteController,在您的情况下调用它的成员函数actionIndex()

Yii::import('application.controllers.SiteController');
$controller_instance = new SiteController("Site"); //string $id, CWebModule $module=NULL
$controller_instance->actionIndex();

控制器构造文档

理想情况下,作为 mvc 实践,您不应该这样做,而是从页面发出单独的 ajax 请求以从单独的操作中获取内容。

于 2012-08-12T13:20:08.500 回答