Я считаю, что это должно быть очень просто, но я не могу заставить его работать. Я хочу создать ссылку на текущую страницу, что бы это ни было, и просто изменить параметр «lang». В основном, чтобы иметь ссылку в углу, которая меняет язык, но оставляет вас на одной странице.cakekphp 3: Создание ссылки на текущую страницу с параметром языка
Моя лучшая попытка еще это:
//current url: 'da/articles/view/1'
$this->Url->build(['lang' => 'en']);
//returns '/en/articles/view'
Итак, как я могу получить его, чтобы сохранить переданную из параметров 1, который, конечно, является идентификатор статьи? Имейте в виду, у меня есть другие контроллеры, для которых я хотел бы, чтобы это работало так просто делать это не будет делать, хотя это работает:
$this->Url->build(['controller' => 'Articles', 'action' => 'view', 1, 'lang' => 'en']);
Спасибо, но, как упоминалось у меня есть несколько контроллеров, и они могут иметь различные параметры, так что мне действительно нужно, чтобы быть в состоянии использовать это с основной маршрутизации, как это : $ routes-> connect ('/: action/*'); –
@JonasKvistJensen В вашем примере «базовой маршрутизации» нет каких-либо элементов маршрута, которые вы указали в своем вопросе ... вы также не упомянули произвольные параметры, только другие контроллеры, которые будут рассмотрены в примере в мой ответ. Возможно, вы захотите обновить свой вопрос надлежащим контекстом, чтобы лучше отразить вашу проблему. – ndm