我想在Laravel上做动态菜单。菜单级别将存储在数据库中。但我的问题是,这些菜单必须能够切换到其他语言。所以我不确定laravel-localization是否有能力?下面是我想要的桌子。
menuid languageA(English) languageB languageC
1 menuname1 www xxx
2 menuname2 yyy zzz如有任何建议或指导将不胜感激。
发布于 2020-02-01 03:10:04
我喜欢的想法。
这个包包含一个特点,使雄辩的模型可翻译。翻译以json的形式存储。不需要额外的桌子来容纳它们。
表格
id name
1 {'en' => 'Home', 'id' => 'Beranda'}
2 {'en' => 'About', 'id' => 'Tentang'}模型
use Illuminate\Database\Eloquent\Model;
use Spatie\Translatable\HasTranslations;
class Menu extends Model
{
use HasTranslations;
public $translatable = ['name'];
}创建模型
您可以在创建模型时立即设置翻译。下面是一个例子:
$menu = Menu::create([
'name' => [
'en' => 'About',
'id' => 'Tentang'
],
]);翻译
获取当前区域设置的转换的最简单方法是只获取已转换属性的属性。
$menu->name;发布于 2020-01-31 23:43:26
有很多种方法,例如,您可以为两个表分离数据,如
// Menus
id
link
sort_number
created_at
updated_at
// Menus languages
id
menu_id
title
language
created_at
updated_at然后根据关系选择它们。
https://stackoverflow.com/questions/60012634
复制相似问题