mysql - 更新 Eloquent 模型的 JSON 字段

标签 mysql json laravel model eloquent

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

最佳答案

您可以使用 Attribute Casting .

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

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

如果你想编辑这个字段,你可以这样做:

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

$options = $user->options;

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

$user->options = $options;

$user->save();

关于mysql - 更新 Eloquent 模型的 JSON 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40216938/

相关文章:

mysql - Piwik MySQL 数据库 : calculate length of user actions

ios - 带字典的 JSON - 嵌套对象转换为字符串并显示

javascript - json foreach数组数组与jquery

mysql - Laravel 4 Eloquent + 原始查询返回 NULL

php - @setUp 和@tearDown 注解 PHPUnit

mysql - 如何使用 SELECT FOR UPDATE

php - 如何从此表中选择日期 "span"?

mysql - 在 MySQL 中计算行数,直到列中的值发生变化

javascript - getJSON 向 Controller 发送 null 参数

php - 如何使用单个 Laravel 代码实例配置和运行具有各自数据库的多个网站