首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yii路由模块问题

Yii路由模块问题
EN

Stack Overflow用户
提问于 2014-10-18 18:45:34
回答 1查看 65关注 0票数 0

这是我的模块"auth“

代码语言:javascript
复制
-auth/
-controllers/
---AuthController.php

在控制器中,我有操作“寄存器”。

在布局中,我创建路由url:

$this->createUrl('auth/auth/register')

规则在config/main.php中

代码语言:javascript
复制
'urlManager' => array(
    'urlFormat' => 'path',
    'showScriptName' => false,
    'rules' => array(
        'register' => 'auth/auth/register',
        '<controller:\w+>/<id:\d+>' => '<controller>/view',
        '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
        '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
    ),
),

当我在mySite/index.php注册时,url看起来很好:mySite/寄存器。Url工作,视图是可见的。当我是这个视图时,mySite/注册在这里引发了一个问题。寄存器url是mySite/auth/寄存器--当然,我看到404错误。为什么要这样做,如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-18 21:20:34

来自createUrl的API页面

如果控制器属于模块,则模块ID将以路由为前缀。(如果不需要模块ID前缀,则路由应该以斜杠“/”开头。)

因此,您的代码应该读取

代码语言:javascript
复制
$this->createUrl('/auth/auth/register')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26443282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档