我试图通过视图页面上的下拉菜单更改Laravel中的语言。在下拉列表中选择语言后,我想设置cookie并将该cookie值传递给LanguageController中的App :: setLocale()。 现在有两件事情不起作用:
查看
<select id="dropdownLang">
<option value="">Change Language</option>
<option value="en"><?php echo link_to_route('language.lang', 'English', array('en'));?></option>
<option value="sp">?php echo link_to_route('language.lang', 'Spanish', array('sp'));?></option>
</select>
路线
Route::get('language/{lang}', ['as' => 'language.lang', 'uses' => 'LanguageController@lang']);
控制器
class LanguageController {
public function __construct() {
App::setLocale(Cookie::get('lang'));
var_dump(Cookie::get('lang'));
}
public function lang($lang) {
Cookie::forever('lang', $lang);
return Redirect::back();
}
}