我刚刚开始使用 Yii 框架,试图创建一个简单的应用程序。我添加了 yii-用户管理模块 (YUM),并遵循了简短的安装教程。
按照本教程,我创建了一个扩展 YumRegistrationController 的注册控制器 - 然后尝试在浏览器中加载它。但是,无论我如何更改 UrlManager 的配置,我都无法加载自己的控制器或视图(按照说明将视图复制到 protected/views/registration.registration.php)。
我不是唯一一个遇到相同问题的人 - 例如,请参阅此处 - 但我无法使任何解决方案正常工作。甚至重命名控制器都不起作用,所以我认为我的 UrlManager 设置存在根本性问题。
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'caseSensitive'=>false,
'rules'=>array(
'<controller:w+>/<id:d+>'=>'<controller>/view',
'<controller:w+>/<action:w+>/<id:d+>'=>'<controller>/<action>',
'<controller:w+>/<action:w+>'=>'<controller>/<action>',
),
),
YumRegistrationController 每次都会加载,或者我收到 404 错误。
我尝试了其他规则,例如:
'registration' => 'application.controllers.Registration',
或(重命名后)
'registration' => '//MyRegistration/registration',
甚至
'registration' => '//registration/registration/registration',
就像在我读过的一篇文章中一样,但没有任何效果。
请帮忙 - 我真的很想继续创建一个应用程序,而不仅仅是在设置上工作......
更新:/注册/注册/注册工作,它只显示默认视图并加载控制器以进行 YUM 注册...
Yii 版本 1.1.10
我认为,您在配置main.php中注册了用户组件。所以请分享一下。我可以帮忙。
. 'loginUrl' => array('/user/user/login'),可能会导致问题。无需更改网址管理器。
'user'=>array(
'class'=>'application.components.WebUser',
'allowAutoLogin'=>true,
'loginUrl' => array('/user/login'),
),