Лучше ли использовать JsonField или несколько полей модели для Django Model?
Например,
class TestModel(models.Model):
title = models.CharField(max_length = 200)
descriptions = models.JsonField()
Or
class TestModel(models.Model):
title = models.CharField(max_length = 200)
description_1 = models.TextField()
description_2 = models.TextField()
description_3 = models.TextField()
description_4 = models.TextField()
description_5 = models.TextField()
Предположим, что у меня ограниченное (не более 5) количество описаний. Какой подход лучше и будет считаться хорошей практикой?
Я вообще выступаю за использование нескольких моделей, а не за использование JSON, хотя и для поля JSON есть свое время и место. У вас есть несколько полей описания, вы можете сделать что-то вроде этого:
class TestModel(models.Model):
title = models.CharField(max_length = 200)
class TestModelDescription(models.Model):
test_model = models.ForeignKey(TestModel, ...
description = models.CharField(...
Затем вы можете иметь любое количество описаний и обращаться к ним следующим образом:
test_model.testmodeldescription_set.all()