@Dadoshik

Как добавить данные к уже имеющимся в ячейку формата JSON?

Laravel 5.4
MySQL 5.7
Встала задача, сохранять NickNameМЫ пользователей в БД, которые решили участвовать в розыгрыше.
Удобнее всего их хранить в массиве или в ячейке формате JSON.

Проблема:
Если в ячейке уже есть 1 никнейм, как добавить второй к нему?

Я сделал так:
Получил старое значение и присвоил новое, но некнеймы стали сливаться, пришлось разделить их '|' а при выборке с помощью explode() убрать разделитель и получить массив имен.
$slash = '|';
            $test->party = $test->party.= $slash .= $lottery->nickname; 
            $test->sum = $test->sum + 1;
            $test->save();


Может кто-нибудь подскажет более изящнее способ? Как добавить новый никнейм к уже существующему, а потом сделать выборку.

В программировании 1,5 месяца. Лучше костыля не придумал :(
  • Вопрос задан
  • 401 просмотр
Решения вопроса 1
причем тут explode если ты используешь json.
json_encode() -> json_decode()
serialize() -> unserialize()
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Sanasol
@Sanasol Куратор тега Laravel
нельзя просто так взять и загуглить ошибку
Удобнее всего их хранить в массиве или в ячейке формате JSON.

нет, удобнее всего делать нормально.

hasMany называется. Relations между Modelями и всякое такое.
Ответ написан
Ваш ответ на вопрос

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

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