Я работаю над веб-приложением yii1, я упомяну свою проблему простым способом:
У меня есть домашняя страница просмотра, я создал URL как следующее:
<a href="<?php echo yii::app()->createUrl('home/Test') ; ?>">link</a>
в моем контроллере дома у меня есть этот простой код:
public function actionTest(){
var_dump(Yii::app()->language) ;
exit() ;
}
мой проект поддерживает два языка арабский и английский,
когда пользователь меняет язык с арабского на английский, все работает нормально, верстка, язык и все, кроме предыдущего кода.
после того, как пользователь поменяет язык, если он нажмет на предыдущую ссылку, результатом будет EN независимо от языка приложения, будь то арабский или английский, после того как var сбросит язык. и обратите внимание, что каждая ссылка в приложении была создана одинаково, и она работает нормально, кроме этой ссылки. Зачем ?
Кто-нибудь может посоветовать мне, пожалуйста?
Для проблемы, описанной выше, проблема была в маршрутизации. Приложение в некоторых ссылках не направляет к правильному действию контроллера.
Причина этого была в самом моем проекте. потому что я получил проект после передачи другому разработчику, поэтому я не знал всех функций и правил, которые он использовал. Таким образом, проблема заключалась в том, что все действия, которые не имели роли spcifce для отображения на домашней странице, приводили к тому, что приложение перенаправлялось к действию по умолчанию, поэтому оно, как сказано .httaccess, возвращалось к стандартному состоянию по умолчанию и в качестве ответа выдает код состояния 302.
Спасибо, переполнение стека
Других решений пока нет …