我正在尝试将项目从laravel 5.7更新到6.x
我有一个多语言网站,并且在页脚中有一个sleect框可以更改语言,所以问题是它给出了错误:
未定义变量:语言
我已经检查了文档,我真的不知道我缺少什么! https://laravel.com/docs/6.x/views
我的页脚:
<select class='form-control' id="language_footer" name="language">
foreach($language1 as $key => $value)
<option value="{{$key}}" {{ (Session::get('language') == $key) ? 'selected' : '' }} > {{$value}}</option>
@endforeach
</select>
这是我的SetDataProvider
public function boot()
{
if(env('DB_DATABASE') != '') {
if(Schema::hasTable('language'))
$this->language();
}
}
public function language()
{
$language = Language::where('status', '=', 'Active')->pluck('name', 'short_name');
View::share('language', $language);
$default_language = Language::where('status', '=', 'Active')->where('default', '=', '1')->limit(1)->get();
View::share('default_language', $default_language);
if($default_language->count() > 0) {
Session::put('language', $default_language[0]->value);
App::setLocale($default_language[0]->value);
}
}
在laravel 5.7中,我没有任何问题,并且似乎在laravel 6.x中工作,它显示了未定义的变量:语言
感谢您的帮助。
答案 0 :(得分:0)
所以我很蠢!
我忘记在app.conf中声明SetDataProvider