Динамическое изменение CUrlManager::rules

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
zbd
Сообщения: 20
Зарегистрирован: 2011.03.08, 02:30

Динамическое изменение CUrlManager::rules

Сообщение zbd »

В конфиге

Код: Выделить всё

'preload'=>array( 'demoComponent'  ),

'components'=>array(
    'urlManager' => array(
        'urlFormat' => 'path',
        'rules' => array(),
    ),
    'demoComponent' => array(
        'class' => 'DemoComponent',
    ),
),
 
Метод DemoComponent::init()

Код: Выделить всё

function init() {
    Yii::app()->urlManager->rules = array('page'=>'site/page');
}
 
НО, при запросе site.ru/page выводит ошибку, почему не работает свойство CUrlManager::rules?

Ошибка
Page Not Found
Unable to resolve the request "page".
Аватара пользователя
resurtm
Сообщения: 299
Зарегистрирован: 2010.12.19, 09:13
Откуда: Казахстан, Алма-Ата
Контактная информация:

Re: Динамическое изменение CUrlManager::rules

Сообщение resurtm »

Изменять правила urlManager'а можно вроде как только в onBeginRequest.

http://rmcreative.ru/blog/post/curlmanageraddrules — как раз именно то, что вам и нужно.
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: Динамическое изменение CUrlManager::rules

Сообщение rak »

так и в preload отлично работает,
насчет addRules +1
Ответить