i在Django项目上工作,因为我需要一个模型来将个性化信息与用户保持相关。该领域是独立的,因此我将其保留为JSON字段。现在,我想知道限制该字段的关键值的最佳方法是什么。
说,有些用户想共享名称,地址,电子邮件给我们,有些只是想共享名称。此列表可以不时增加。因此,很难预测将来需要什么。为简单起见,我喜欢将这些信息作为JSON响应保留在数据库中。这个问题的最佳设计是什么?
我会这样使用 -
def validate_json(value):
try:
json.loads(value)
except Exception:
raise ValidationError(
_('%(value)s is not an valid Json string'),
params={'value': value},
)
class Track(models.Model):
personalized_information = models.TextField(null=True, blank=True, validators=[validate_json])