webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg

Как правильно сохранить данные из модели в 1 ячейку БД?

Есть модель для формы с кучей полей, со временем они могут меняться и т.д.
Есть модель для таблицы (user_id, data)
Вопрос 1:
как лучше хранить serialize, json, еще варианты?
Вопрос 2: как лучше обратиться к данным модели формы?
$model - даст объект, что не нужно, $model->atributes возвращает только имена полей. Что-то переклинило меня.
  • Вопрос задан
  • 146 просмотров
Решения вопроса 1
bitver
@bitver
как лучше хранить serialize, json, еще варианты?
Грубо говоря json лучше и быстрее. Serialize удобнее, если пихать в бд объекты совственных классов, что вам скорее всего не нужно.

как лучше обратиться к данным модели формы?
В модели написать метод типа getDataAsModel(){...}, который возвратит DynamicModel составленную из вашего json_decode($this->data);
После сабмита на клиенте Контроллер должен принять данные в такую-же динамическую модель взятую из getDataAsModel(){...}, вызвать валидацию и сунуть её в метод setMyDataModel($dinModel), который сделает что нужно и засунет $this->data = json_encode($data);

Доки.
www.yiiframework.com/doc-2.0/yii-base-dynamicmodel.html
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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