如我有个modules 名叫admin 我希望这个admin 目录下,只有角色 admin可以访问,
怎么样简单设置呢?可以实现这样 的效果。而不是对每个controller设置。
这样设置后,比如,我需要对其中一个usercontroller.php 设置不但admin可以访问,test也可以, defaultcontroller.php 只有superadmin角色访问。
请问这样的访问规则怎么写?
或者怎么样可以解决这样的问题
谢谢
如我有个modules 名叫admin 我希望这个admin 目录下,只有角色 admin可以访问,
怎么样简单设置呢?可以实现这样 的效果。而不是对每个controller设置。
这样设置后,比如,我需要对其中一个usercontroller.php 设置不但admin可以访问,test也可以, defaultcontroller.php 只有superadmin角色访问。
请问这样的访问规则怎么写?
或者怎么样可以解决这样的问题
谢谢
可以考虑在两个地方控制:一是在module的init()里通过程序控制,二是在BaseController里控制(其它的controller继承这个)。
这个问题基本解决了。。
非常感谢。。有一点疑问出来了。。
如 有个module 叫admin的,还有个叫user的。。
当访问admin时,没角色时跳到admin 下的index.php/admin/default /login ,
当访问user时,没角色时跳到user下的index.php/user/default /login ,
但 main.php中只能
‘user’=>array('loginUrl'=>array('site/login'),</pre>
怎么样实现呢?这样不管是访问哪个module都跳到了 index.php/site/login
你可以考虑在module init里修改Yii::app()->user->loginUrl
Yii::app()->user->loginUrl = 'webstup/default/login';
我这样设置了,就打不开网页了。。。汗。。是不是我写的有什么地方不对的了?
Yii::app()->user->loginUrl = 'index.php/webstup/default/login';
这样就可以了,好像是不知道 我使用没使用路由哦。。。。。
如果是字符串的话,你应该提供完整的相对或绝对URL。
如果是数组的话,createUrl()将被调用使用该数组来创建URL。
哦。。明白了。。 太感谢了,又解决一个问题。。
薛大哥 这个baseController貌似不能自动注册 其他控制器继承它的话