metallix
@metallix
Backend - developer

Yii2 — как правильно задать url rule?

Привет, и собственно - сабж.
Есть правило -
<categories/<id:\d+>/<slug:\w+> => 'categories/index'
, которое хорошо работает для ссылок вида - "example.com/categories/5/sport".
Но если параметр 'slug' состоит из нескольких частей, прим. 'music-and-movies', то правило не срабатывает и перекидывает на 404 страницу. Но если в 'slug' дефис заменить на подчеркивание, то всё работает. В чем проблема?
Ведь насколько я понял из документации, то '\w+' должен понимать и дефисы тоже
  • Вопрос задан
  • 349 просмотров
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
Если не дружите с регуляркой, не используйте или изучите. Можно вот так:'categories/<id>/<slug>' => 'categories/index'
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@matperez
добавьте дефис в регулярку. что-то типа slug:[\w-]+ или slug:[\w\-]+
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы