Back to questions
Аэрофлот
Junior — Middle
57
Использовали ли вы JSONField в Django для хранения структурированных данных в модели?
Companies where asked
Answer from AI
sobes.tech AI
В Django JSONField используется для хранения структурированных данных в формате JSON прямо в базе данных. Это удобно, когда структура данных может быть гибкой и не фиксированной, например, для хранения настроек пользователя, метаданных или других вложенных данных.
Пример использования в модели:
from django.db import models
class Product(models.Model):
name = models.CharField(max_length=100)
attributes = models.JSONField(default=dict) # Здесь можно хранить произвольные данные
# Пример создания объекта с вложенными данными
product = Product.objects.create(
name='Телефон',
attributes={'color': 'черный', 'memory': '128GB', 'features': ['5G', 'NFC']}
)
JSONField поддерживается в PostgreSQL, MySQL и SQLite (начиная с Django 3.1). Он позволяет делать запросы по ключам JSON, что удобно для фильтрации.