vikkyshostak
@vikkyshostak
< This head full of dreams.

Django. Как работать с полями (и группами полей), сохранёнными в JSONField()?

Приветствую!

Вопрос по Django 1.11 в связке с PostgreSQL 9.6: как работать с полями типа JSONField? Поясню.
  • Есть модель с единственным полем data (JSONField).
  • В это поле сохраняются все данные из полей формы (с фронтэнда).
  • Формат JSON примерно с такой логикой (схема составляется при сохранении во вьюхе):
{
  'field_name': 'value',
  ...
  'group_fields_name': 
  {
     'field_name_1': 'value',
     'field_name_2': 'value',
  }
  // И так далее. Всего около 20 штук,
  // типы полей — select, input[type=text] и input[type=number]
}

Так вот. Можно ли работать с каждым полем/группой (который сохранён в формате JSON в data) так, как будто бы эти поля были добавлены в модель (редактировать с подстановкой значений).

Задумка эта родилась из-за того, что фронтэнд форма (Vue.js) изобилует всякими Add more field кнопками, которые добавляют в DOM от 1 до бесконечности полей (ничем не регулируется), которые при этом должны быть редактируемыми в личном кабинете пользователя (после сохранения формы).

Вот один из примеров: https://imgur.com/a/DtUf3 (группа полей из листинга выше group_fields_name).

Другого варианта, «как сделать это, не через JSONField()?» — так и не нашёл.. поэтому буду рад толковым советам и юзкейсам.
  • Вопрос задан
  • 424 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

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