Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 更新雄辩模型的JSON字段_Mysql_Json_Laravel_Model_Eloquent - Fatal编程技术网

Mysql 更新雄辩模型的JSON字段

Mysql 更新雄辩模型的JSON字段,mysql,json,laravel,model,eloquent,Mysql,Json,Laravel,Model,Eloquent,因此,我的数据库中有一个JSON字段。当我在我的模型对象上访问它时,我得到一个字符串,所以我必须自己解码它。可以像访问对象一样访问它吗?我可以定义访问器,但在这种情况下,我无法更改它。您可以使用 假设在您的用户模型中有一个类型为Json的options属性,那么您可以在您的用户模型中添加: protected $casts = [ 'options' => 'array', ]; 如果您想编辑此字段,您可以这样做: $user = App\User::find(1); $opt

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

您可以使用

假设在您的用户模型中有一个类型为
Json
options
属性,那么您可以在您的用户模型中添加:

protected $casts = [
    'options' => 'array',
];
如果您想编辑此字段,您可以这样做:

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

$options = $user->options;

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

$user->options = $options;

$user->save();