Как правильно сохранить json-данные в БД?

И снова всем привет! )
Не правильно сохраняю json данные. Как правильно - не знаю... Подскажите кто знает

Имею поле elements с json данными
{"param": {"0": "0"}}
Требуется обновить параметр
Обновляю...
Section::where([
    "id" => 1
])->update([
    "elements->param" => json_encode(["TEST" => "TEST"])
]);

Но получаю это
{"param": "{\"TEST\":\"TEST\"}"}
Как правильно сохранить, чтобы json сохранил правильную структуру, и получилось вот так
{"param": {"TEST": "TEST"}}
  • Вопрос задан
  • 514 просмотров
Решения вопроса 1
@mShpakov
Не нужно делать json_encode
Пропишите в модели casts object/array для нужной колонки и сохраняйте так:
Section::where([
    "id" => 1
])->update([
    "elements->param" => ["TEST" => "TEST"]
]);


UPD
А сам eloquent вам вернет данные уже так же распарсенными
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы