JohnDaniels
@JohnDaniels

Как правильно организовать маршрутизацию в таком случае?

Если, например, есть такие роуты:

site.ru/moscow - выбор города
site.ru/user1 - страница пользователя
site.ru/newsitem - детальный просмотр новости
site.ru/page - какая-нибудь страница (с динамическим slug)

страницы разные, но в urlManager для всех этих страниц правило будет одинаковым.

как правильно раскидать их по разным controller/action ?
  • Вопрос задан
  • 42 просмотра
Пригласить эксперта
Ответы на вопрос 2
Если организовать маршруты таким образом, то нагрузка на urlManager будет не маленькой, так как по каждому правилу придется проверяться наличие той или иной новости, наличие того или иного пользователя, также придется контролировать уникальность slug для каждой сущности.
Поэтому лучше отказаться от такой схему маршрутизации, а внести в маршруты для отдельных сущностей
свои индивидуальные особенности, например:

site.ru/c/moscow - выбор города
site.ru/u/user1 - страница пользователя
site.ru/n/newsitem - детальный просмотр новости
site.ru/p/page - какая-нибудь страница (с динамическим slug)
Ответ написан
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
Полностью согласен с Евгений Бухарев, добавлю еще 1 вариант с
site.ru/city_moscow
site.ru/user_1
site.ru/news_antonina-ela-ovosh
site.ru/page_about
Но придется писать свой urlManager, и ждать доп проблем с ростом проекта. Так что чаще юзают классику site.ru/city/moscow. К тому же это RESTfull
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы