Size: a a a

2020 February 07

AM

Alexander Makarov in Yii Framework 3
Это может быть любой набор параметров...
источник

AM

Alexander Makarov in Yii Framework 3
Для группы делаем префикс {language}/ и параметр сетим из Middleware.
источник

АН

Александр Некрасов in Yii Framework 3
Alexander Makarov
Роутер, по идее, не должен знать о языке как таковом. Это может быть и другой префикс: юзернейм, суб-проект... что угодно.
генерировать урл типа /ru/testovi-blog/ /en/test-blog/ в зависимости от языка, будет возможно ?
источник

AM

Alexander Makarov in Yii Framework 3
Как-то так.
источник

AM

Alexander Makarov in Yii Framework 3
Александр Некрасов
генерировать урл типа /ru/testovi-blog/ /en/test-blog/ в зависимости от языка, будет возможно ?
Это необходимо.
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
Для группы делаем префикс {language}/ и параметр сетим из Middleware.
А если на дефолном языке н нужно префикса?
источник

А

Алексей R in Yii Framework 3
источник

А

Алексей R in Yii Framework 3
Dmitriy S
Я в роутере только один вижу. Если задавать префикс в паттерне - то это плохая идея.
я вот об этом
источник

А

Алексей R in Yii Framework 3
то, что сейчас как setPrefix в urlGenerator - это временное решение
источник

DS

Dmitriy S in Yii Framework 3
Алексей R
то, что сейчас как setPrefix в urlGenerator - это временное решение
С этого надо было начинать
источник

А

Алексей R in Yii Framework 3
нужно выделять UrlGenerator в отдельную штуку, чтобы он разруливал все эти префиксы до маршрута
источник

А

Алексей R in Yii Framework 3
работать с этой штукой будут мидлвари. Как пример - языковая мидлварь
источник

DS

Dmitriy S in Yii Framework 3
Я думаю, что такие вещи как router/di/factory нужно доделать в первую очередь.
источник

А

Алексей R in Yii Framework 3
с другой стороны не забываем о том, что можно все маршруты положить в одну группу с этими префиксами и приделать к этой группе необходимые мидлвари
однако проблема тут в том, что мидлвари запустятся только после матчинга, а значит они не смогут задавать эти самые префиксы
источник

AM

Alexander Makarov in Yii Framework 3
Алексей R
с другой стороны не забываем о том, что можно все маршруты положить в одну группу с этими префиксами и приделать к этой группе необходимые мидлвари
однако проблема тут в том, что мидлвари запустятся только после матчинга, а значит они не смогут задавать эти самые префиксы
Мидлвари для роутов конкретных после матчинга. Основной стек может и до.
источник

А

Алексей R in Yii Framework 3
Alexander Makarov
Мидлвари для роутов конкретных после матчинга. Основной стек может и до.
вот поэтому и нужно выносить UrlGenerator в отдельную штуку
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
Для группы делаем префикс {language}/ и параметр сетим из Middleware.
Попробовал этот вариант, работает но. Нельзя совсем без языка, при генерации надо обязательно задавать язык как параметр.
источник

DS

Dmitriy S in Yii Framework 3
Алексей R
с другой стороны не забываем о том, что можно все маршруты положить в одну группу с этими префиксами и приделать к этой группе необходимые мидлвари
однако проблема тут в том, что мидлвари запустятся только после матчинга, а значит они не смогут задавать эти самые префиксы
Языковую мидлварь надо до добавлять в фактори диспетчера до мидлвари роутера.
источник

DS

Dmitriy S in Yii Framework 3
Александр Некрасов
Locale вроде не должен быть в контейнере
Как тогда получить текущую локаль
источник

АН

Александр Некрасов in Yii Framework 3
Dmitriy S
Как тогда получить текущую локаль
в мидлваре
источник