2013-03-22 2 views
1

У меня есть usecase, для которого требуется определенное использование URL-адресов. Я хочу, чтобы у пользователей была своя страница, и URL-адрес должен быть таким, что им легко запомнить их страницу.Yii Управление URL-адресом

Я думал сделать URL-адрес DOMAIN.COM/USERNAME

Как я могу добиться этого? Я, вероятно, должен написать менеджер URL? Как я могу сделать так, чтобы «нормальные» контроллеры все равно работали?

+0

Как могли «нормальные» контроллеры все еще работают, если вы больше не можете использовать URL для доступа к ним? Как вы собираетесь к ним обращаться? –

+0

Идея состояла в том, чтобы сделать первый поиск, если часть USERNAME является именем пользователя или фактически существующим контроллером. Если это существующий контроллер => Переслать его в контроллер, иначе отобразите страницу пользователя – ThomasVdBerge

+0

. Как насчет конфликтов имен между пользователем и контроллером? Или вы просто запрещаете пользователю выбирать такое имя, как «сайт», если у вас есть SiteController? –

ответ

4

Ну, вы должны прочитать: http://www.yiiframework.com/doc/guide/1.1/en/topics.url

Yii управление URL очень удобно, например, :

'urlManager'=>array(
    ..... 
    'rules'=>array(
    ..... 
    // AFTER other rules 
    '<userName:.+>' => 'user/view', 

Yii будет использовать первое правило сопоставления, поэтому перед этим вы должны определить правила для других контроллеров.

И в контроллере:

public function actionView($userName) 
{ 
    // do what you want 
} 
Смежные вопросы