您好,感谢您的阅读。
我安装了yii用户模块,并尝试使用以下代码链接到配置文件页面;
'url' => Yii::app()->getModule('user')->profileUrl),
在我的main.php中,我有以下内容;
'urlManager' => array(
'urlFormat' => 'path',
'showScriptName' => false,
'caseSensitive' => false,
'rules' => array(
'gii' => 'gii',
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<action>' => 'site/<action>',
),
),
在我的htaccess文件中我有这个;
RewriteEngine on
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
它可以工作,我被重定向到http://localhost/spob/user/profile
,但当我在另一个链接到我的受保护/视图的链接时,例如'url' => array('employercontract/index')),
我得到以下错误Error 404
Unable to resolve the request "user/employercontract/index".
正确的路径将是没有用户路径的http://localhost/spob/employercontract/index
。
我认为问题可能在main.php中,我宣布规则,任何建议都会非常感谢我一整个上午都在努力解决这个问题
答案 0 :(得分:3)
如果我理解你的正确......
尝试替换此
'url' => array('employercontract/index'))
用这个
'url' => array('/employercontract/index'))
注意斜杠。这将告诉UrlManager应该根据站点根目录创建链接。没有它 - 链接基于当前模块(在您的情况下是用户模块)。
我希望这会有所帮助。