Как написать правило URL в фреймворке Yii?
<?php echo CHtml::link($value->title, array(Yii::app()->createUrl('forum/thread', array('id'=>$value->thread_id)))); ?>
я получил ссылку
Форум / Тема /2
в моих правилах urlManager 'thread/<id:\d+>' => 'forum/thread',
как изменить правило и метод createUrl?
createUrl('any-value/forum/thread', array('id'=>$value->thread_id))
попасть в URL
форум / любое значение / тема /2 или форум /php-для-новичков / тема /2
Я прошу прощения за мой английский, большое спасибо
2 ответа
Правило URL Manager должно выглядеть так:
'forum/<title:\w+>/thread/<id:\d+>' => 'forum/thread', //make sure this is listed first so it has priority
'thread/<id:\d+>' => 'forum/thread',
Тогда в вашем контроллере у вас будет это:
public function actionThread($id,$title=null) {
//$title will contain title from url if sent
}
Попробуй это:'forum/any-value/thread/<id:\d+>' => 'any-value/forum/thread',
и с этим: createUrl('any-value/forum/thread', array('id'=>$value->thread_id))
Так что вы должны получить forum/any-value/thread/2
это должно работать!
Но если вы внутри модуля под названием forum
тогда вы бы сделали так:
'any-value/thread/<id:\d+>' => 'any-value/forum/thread',
и с этим: createUrl('any-value/forum/thread', array('id'=>$value->thread_id))