0

在我的 Yii 应用程序中,我在 Yii 中定义了urlManager如下规则:

'urlManager'=>array(
            'urlFormat'=>'path',
            'showScriptName'=>false,
            'rules'=>array(
                'izletiste/<grad:\.*?>/<naziv:.*?>/<id:d+>'=>'izletiste/show',
                '<controller:\w+>/<id:\d+>'=>'<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
                '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
            ),
        ),

现在,当我想创建一个链接时,我使用以下结构:

<?php echo CHtml::link(CHtml::encode($izletiste->nazivIzletista),array("izletiste/show","grad"=>"Paris","naziv"=>"Some text", "id"=>$id)); ?>

我得到的网址如下:

http://mywebsite.com/izletiste/Paris/Some+text/21

但是当我点击链接时,我收到以下错误:

错误 404

系统找不到请求的操作“Paris”。

我的问题是为什么会发生这种情况,为什么 Yii 不承认应该调用 izletiste/show 动作而不是 izletiste/paris,以及如何解决这个问题?

4

1 回答 1

1

尝试更改第一条规则,如下所示:

'izletiste/<grad>/<naziv>/<id:\d+>'=>'izletiste/show'
于 2015-01-29T05:51:55.830 回答