Laravel BackPack 如何翻译数据库读取的展示字段为其他语言
Laravel BackPack 字段展示名翻译方案
实现步骤
1. 新建语言翻译文件
在resources/lang目录下创建对应语言的文件夹,例如简体中文对应zh-CN,在文件夹内新建自定义翻译文件,比如fields.php,添加对应字段的翻译键值:
<?php return [ 'name' => '姓名', 'surname' => '姓氏', // 可继续添加其他需要翻译的字段键值对 ];
2. 在CRUD控制器中指定翻译后的标签
修改对应CRUD控制器的字段定义代码,给列/字段手动指定label参数,调用Laravel自带的__()翻译辅助函数读取翻译内容:
列表列翻译示例
// 列表页字段配置 $this->crud->addColumn([ 'name' => 'name', 'label' => __('fields.name'), ]); $this->crud->addColumn([ 'name' => 'surname', 'label' => __('fields.surname'), ]);
表单字段翻译示例
如果需要同时翻译新增/编辑表单的字段名,修改addField配置即可:
// 表单字段配置 $this->crud->addField([ 'name' => 'name', 'type' => 'text', 'label' => __('fields.name'), ]); $this->crud->addField([ 'name' => 'surname', 'type' => 'text', 'label' => __('fields.surname'), ]);
3. 切换系统默认语言
修改config/app.php中的locale参数为你使用的语言标识,比如简体中文就修改为:
'locale' => 'zh-CN',
常见问题排查
- 如果修改后翻译未生效,执行以下命令清空缓存即可:
php artisan config:clear php artisan cache:clear
内容的提问来源于stack exchange,提问作者Sviat
相关产品推荐
相关产品推荐

