如何使用位于文件夹中的 Yii 控制器而不是默认的“protected/controller”?
在 Yii 中,当访问
时,框架将开始运行 protected/controller 中的代码/
我希望该代码位于另一个文件夹中,如 protected/anotherFolder
所示,而其他控制器保持原样。怎么做呢?
问候
In Yii, when access to <app-host>/index.php?r=<mycontroller>/<myaction>
, the framework will start to run code in protected/controller/<MyController>Controller.php
I want to that code to be located in another folder, says protected/anotherFolder
, while other controllers remain as-is. How to do that?
Regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
打开
/index.php
,编辑为Open up
<app-host>/index.php
, edit to感谢 yii 论坛上的
mdomba
post,我使用CWebApplication::controllerMap
找到了答案 - 在加载中我们调用的应用程序的状态Thanks to
mdomba
on yii forum at this post, I found the answer usingCWebApplication::controllerMap
- in the loading state of the application we call如果我明白你的意思,你想将 Web 逻辑分成不同的“文件夹”,或者(以更 yii-ly 的方式)模块。例如,要将所有管理内容放到另一个地方并使用 r=admin/users 进行操作,例如,
如果您激活了 gii 管理器,请转到 /index.php?r=gii,然后创建一个模块。就是这样。然后,您可以在 protected/modules/
/controllers/ 内创建控制器并使用该路径调用它们。当然,视图也存储在里面If I got you, you want to split the web logic into different "folders", or (in a more yii-ly way) modules. For instance, to have all the administrating stuff into another place and get to this using r=admin/users, for instance
If you have your gii manager activated, go to /index.php?r=gii, and create a module. That's it. You can then create controllers inside protected/modules/
<module-name>
/controllers/ and call them using that path. Of course, views are also stored inside that您可以添加到配置文件
与视图路径相同
You can add to config file
The same with view path