Разный набор полей для каждого объекта

Я ищу способ иметь модель, в которой каждый объект содержит разные наборы полей для другой модели.

Задача - создать IntegrationType. Каждый объект этой модели должен содержать наборы полей, необходимые для создания объекта Integration. Например, у нас есть тип интеграции Facebook, который должен определять такие поля, как app_id, key и т. д. И тогда у нас будет возможность создать Integration с типом интеграции Facebook, который должен хранить значения для этих предварительно настроенных полей.

Я использую базу данных MySQL

У вас не может быть динамического поля в БД. Если вы хотите хранить разные данные для каждого случая, вы можете хранить данные в формате JSON.

SHIVAM JINDAL 22.05.2018 19:05

MariaDB, ответвление от MySQL, поддерживает динамические столбцы mariadb.com/kb/en/library/dynamic-columns

Raymond Nijland 22.05.2018 19:10
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
2
37
1

Ответы 1

Я рекомендую вам использовать поле postgresql Hstore, это поле, похожее на json, но немного более эффективное, помимо ограниченного, чем обычный json.

https://docs.djangoproject.com/en/2.0/ref/contrib/postgres/fields/#django.contrib.postgres.fields.HStoreField

Я не могу принять этот ответ, потому что использую mysql с устаревшей базой данных

Daniil Mashkin 24.05.2018 12:06

Ой, извини. Я этого не видел. Хм, в этом случае я бы порекомендовал вам использовать поле Json, тогда

Luan Fonseca 25.05.2018 18:40

Другие вопросы по теме