1

我刚刚开始使用 Yii 框架,尝试创建一个简单的应用程序。我添加了 yii-user-management 模块 (YUM) 并遵循了简短的安装教程

按照教程,我创建了一个扩展 YumRegistrationController 的 RegistrationController - 然后尝试在浏览器中加载它。但是,无论我如何更改 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',

就像我读过的一篇文章一样,但没有任何效果。

请帮助-我真的很想继续创建应用程序,而不仅仅是进行设置...

更新: /registration/registration/registration 有效,它只显示默认视图并加载控制器以进行 YUM 注册......

Yii 版本 1.1.10

4

1 回答 1

1

我认为,您在配置 main.php 中注册了用户组件。所以请分享一下。我可以搭把手。

. 'loginUrl' => array('/user/user/login'),可能会导致问题。无需更改 urlManager。

         'user'=>array(
        'class'=>'application.components.WebUser',
          'allowAutoLogin'=>true,
          'loginUrl' => array('/user/login'),
          ),
于 2012-10-24T11:48:38.670 回答