Ant*_*ida 1 php translation crud laravel laravel-backpack
我有一个带有确定数量条目的 CRUD 实体。有一些公共字段(标题、描述),但有些条目有一些专有字段,这些字段保存在 extras 中。
我的问题是,某些字段可能是可翻译的,而其他字段则可能不可翻译。目前,让翻译在虚假领域发挥作用的唯一方法是让所有额外内容都可翻译。
class Module extends Model
{
use CrudTrait;
use HasTranslations;
...
protected $fillable = ['title', 'description', 'extras'];
public $translatable = ['title', 'extras'];
Run Code Online (Sandbox Code Playgroud)
这给我带来了一个问题,因为许多额外的字段是不可翻译的图像。
我在@lloy0076的帮助下找到了解决方案
在实体表中添加一列,名为extras_translatable,位于 之后'extras'。
在实体 Model 上,添加extras_translatable和$fillable变量,并强制$fakeColumns转换为:$translatable'extras_translatable'array
protected $fillable = ['title', 'description', 'extras', 'extras_translatable'];
protected $fakeColumns = ['extras', 'extras_translatable'];
protected $translatable = ['title', 'extras_translatable'];
protected $casts = ['extras_translatable' => 'array'];
Run Code Online (Sandbox Code Playgroud)然后只需将所需的字段存储在extras_translatable:
$this->crud->addField([
'fake' => true,
'store_in' => 'extras_translatable',
...
]);
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
2196 次 |
| 最近记录: |