我正在Laravel中创建一个带有后端的应用程序.后端需要管理下载到应用程序的对象集合.必须根据设备语言对对象进行本地化.
在Laravel有一个简单的方法吗?也许是一个雄辩的或Laravel插件?我想避免自己编写本地化支持.
(Laravel中内置的本地化仅用于界面,它不支持Eloquent对象)
解决方法
您需要自己编写.首先,您必须为数据库表建模以支持多语言内容,然后在您的模型中,您将能够说出如下内容:
class Content extends Eloquent { public function scopeEnglish($query) { return $query->where('language','=','en'); } public function scopeSpanish($query) { return $query->where('language','es'); } } class Post extends Eloquent { public function content() { return $this->hasMany('Content'); } }
然后你可以使用它像:
$englishContent = Posts::find($id)->content->english()->get(); $spanishContent = Posts::find($id)->content->spanish()->get();