Yii Framework Forum: Настройка Router - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Настройка Router использование слэша на конце урл Rate Topic: -----

#1 User is online   someone 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 84
  • Joined: 22-September 09
  • Location:Rus, Krasnoyarsk

Posted 22 September 2009 - 09:00 PM

Добрый день! Изиняюсь, но я начинающий в Yii.

Подскажите, пожалуйста, возможно ли настроить URL - генерируемые фреймворком на использование URL вида

../contacts/
../catalog/
../catalog/mebel/
../catalog/mebel/detskaya/

т.е. чтобы на конце присутствовал также слэш?
0

#2 User is offline   Ninja 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 10
  • Joined: 18-September 09

Posted 23 September 2009 - 04:15 AM

array(
    ......
    'components'=>array(
        ......
        'urlManager'=>array(
            'urlFormat'=>'path',
            'showScriptName'=>false,
            'urlSuffix'=>'/',
        ),
    ),
);


п.с. не уверен, но возможно работает только с версии 1.0.9
0

#3 User is offline   Zolter 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 377
  • Joined: 26-March 09

Posted 26 September 2009 - 02:39 AM

Будет и в старых версиях работать. суфикс старая фигня
0

#4 User is offline   Ninja 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 10
  • Joined: 18-September 09

Posted 27 September 2009 - 10:08 AM

Старая-то старая. А вот конкретно по слэшу из обновления 1.0.9:

Quote

Позволено использовать символ слеша в суффиксе адреса, когда включен режим «строгого преобразования» (strict parsing)

0

#5 User is online   someone 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 84
  • Joined: 22-September 09
  • Location:Rus, Krasnoyarsk

Posted 28 September 2009 - 12:14 AM

Возник такой еще вопрос. Возможно ли сделать следующий роут с делением на категории и суб-категории:

/transport/cars/prodazha/nissan/maxima_qx/items/91910921.htm


т.е. получается
/transport/ - контроллер
/cars/ - под-контроллер
/prodazha/ - продажа (тип объявления)
/nissan/ - марка авто
/maxima_qx/ - модель авто
/items/... / - соотв-ий ID объявления.

Интересует - возможно ли сконфигуировать таким образом urlManager? при этом если ссылаться на любой из суб-части URL - открываться должен по логике соответствующей экшн, например

/transport/cars/prodazha/ - откроет весь Листинг по продаже
0

#6 User is offline   Ninja 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 10
  • Joined: 18-September 09

Posted 28 September 2009 - 01:25 AM

View Postsomeone, on 28 September 2009 - 12:14 AM, said:

/transport/cars/prodazha/ - откроет весь Листинг по продаже


                'urlManager'=>array(
                'urlFormat'=>'path',
                'showScriptName'=>false,
                'urlSuffix'=>'.htm',
                'rules'=>array(
                    'transport/cars/<action>/<brand>/<name>/*'=>'cars/<action>',
                    'transport/cars/*'=>'cars',
                    ),
                ),

/transport/cars/prodazha/nissan/maxima_qx/items/91910921.htm
пойдёт в экшн prodazha контроллера cars со следующими гет параметрами:
Array ( [action] => prodazha [brand] => nissan [name] => maxima_qx [items] => 91910921 )


А всё что будет после transport/cars/ будет отправляться в контроллер cars, если не попадёт под первый шаблон.
2

#7 User is online   someone 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 84
  • Joined: 22-September 09
  • Location:Rus, Krasnoyarsk

Posted 28 September 2009 - 03:09 AM

Отлично! Спасибо огромное за ответ!
0

#8 User is offline   Alexandr Dorogikh 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 71
  • Joined: 29-September 09
  • Location:Ukraine, Bila Tserkva

Posted 29 September 2009 - 09:03 AM

а нужно ли при таком описании urlManager
править/создавать файл .htaccess c RewriteRule и если да то какое должно быть правило

у меня раньше были url вида

...domain/index.php?r=site/logout

добавил в конфиг

'components'=>array(
......
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'urlSuffix'=>'/',
),
),

и все перестало работать

тоесть на ...domain/site/logout/
возвращает HTTP 404
0

#9 User is offline   freezy 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 23
  • Joined: 12-August 09
  • Location:Russia, Arzamas

Posted 29 September 2009 - 01:07 PM

А этот?
...domain/index.php/site/logout/
0

#10 User is offline   Alexandr Dorogikh 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 71
  • Joined: 29-September 09
  • Location:Ukraine, Bila Tserkva

Posted 30 September 2009 - 01:05 AM

этот работает при 'showScriptName'=>true,
но вот при отсутсвии имени скрипта не работает ничего
0

#11 User is offline   Ninja 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 10
  • Joined: 18-September 09

Posted 01 October 2009 - 01:44 AM

View PostAlexandr Dorogikh, on 30 September 2009 - 01:05 AM, said:

этот работает при 'showScriptName'=>true,
но вот при отсутсвии имени скрипта не работает ничего


очевидно ведь что апач-то тоже надо сконфигурировать.

в корневой папке ( там де index.php лежит ) создаём файл
.htaccess

с содержимым:

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php


что собственно даже описано в документации.
0

#12 User is offline   Alexandr Dorogikh 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 71
  • Joined: 29-September 09
  • Location:Ukraine, Bila Tserkva

Posted 01 October 2009 - 02:40 AM

спасибо огромное
я это почему то не заметил
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users