我有一个菜单,当用户点击其中一个项目菜单时,它会传递参数。
当用户点击某个项目菜单时,会播放一个视图并调用另一个调用另一个视图的视图...
您能告诉我将参数从视图传递到视图的最佳做法。
我是否必须从视图1传递到view2等等...(正如我所做的那样但我发现它不太干净)或者这是另一种更好的方法。
我必须说我不能把值放在我的控制器的tpp上,因为那时我不知道哪个菜单会被点击。
感谢您的回复
答案 0 :(得分:0)
我假设您正在讨论其他观点http://www.larryullman.com/2011/02/15/rendering-view-files-in-yii/中的观点,否则这个问题没有多大意义。
该视图可以访问所有控制器变量。因此,您可以为控制器定义变量,并且您可以使用$ this->变量在任何嵌套视图中始终访问它。实际上,您可以将它放在控制器的顶部,因为在创建视图时,它永远不会改变。这是1个请求,在处理视图时不应该更改。
如果你想制作一些ninja html,根据用户点击的多个菜单创建带有ajax的html,你总是可以在会话/缓存中保存一些东西并使用那个部分,但更清洁的是将参数传递给整个过程