更新Eloquent模型

时间:2016-10-24 11:11:04

标签: mysql json laravel model eloquent

所以,我的数据库中有一个JSON字段。当我在模型对象上访问它时,我得到一个字符串,所以我必须自己解码它。是否可以像对象一样访问它?我可以定义一个访问器,但在这种情况下我将无法更改它。

1 个答案:

答案 0 :(得分:1)

您可以使用Attribute Casting

我们假设您的用户模型中有options类型Json属性,因此您可以添加用户模型:

protected $casts = [
    'options' => 'array',
];

如果您想编辑此字段,您可以这样做:

$user = App\User::find(1);

$options = $user->options;

$options['key'] = 'value';

$user->options = $options;

$user->save();