在多语言应用程序中,我有一个名为Honors的表,其中包含以下字段:
honor_id
title_fa
title_ar
title_en
pic_name
created_at
updated_at
type
正如您所看到的,对于不同的语言,我添加了一个标题列,并为其添加了后缀。
对于基于当前Locale的刀片模板中的showtitle字段,首先我与AppServiceProvider.php中的所有刀片模板共享Locale,如下所示:
public function boot()
{
$this->app['view']->composer('*', function ($view) {
$view->with('lang', App::getLocale());
});
}
在我的刀片模板中,我使用此代码访问适当的字段:
{{ $Honor->title_.$lang }}
但这不起作用,也没有任何回报?
什么是问题,我该怎么做?
您调用了无效属性,请尝试以下操作:
$titleProperty = 'title_' . $lang;
{{ $Honor->$titleProperty }}