hiscaler
(Hiscaler)
1
createUrl(‘post/index’) 生成的 url 为 www.abc.com/index.php?r=post/index
如果在 backend 模块下的话,我需要这样书写 createUrl(‘backend/post/index’) 这样得到的是 www.abc.com/index.php?r=backend/post/index 这样的路径。
那么有没有办法可以让 createUrl(‘post/index’) 这个在前台的话生成的是 www.abc.com/index.php?r=post/index,同样的代码到了 backend 模块则得到 www.abc.com/index.php?r=backend/post/index 呢?
jerry2801
(Jerry2801)
2
createUrl(’/backend/post’)
这样试试~
jerry2801
(Jerry2801)
4
你用的是 Yii::app()->createUrl() ? —— 使用这个方法,必须写完整的route才行
你在控制器使用 $this->createUrl(); 就可以实现你想要的~
hiscaler
(Hiscaler)
5
是的。我使用的是 Yii::app()->createUrl(),这也有办法实现和 $this->createUrl() 一样的功能吗?
jerry2801
(Jerry2801)
6
你去看看 CController::createUrl() 源码就知道了~
你其实在控制器外部可以调用 Yii::app()->controller->createUrl()
hiscaler
(Hiscaler)
7
我是在模型中定的一个函数,Yii::app()->controller->createUrl() 测试了一下,也不能达到我想的要求。因为返回的是一个 link,目前还是通过 CHtml::link 来达到要求了。
多谢 Jerry,Tks!!!