2017-11-23 11 views
0

私はDjangoプロジェクトに取り組んでいます。私は、個人化された情報をユーザーから保持するモデルが必要です。このフィールドは個々に独立しているので、これをJSONフィールドとして保持します。今、私はこのフィールドのキー値を制限する最良の方法は何か不思議です。DjangoモデルのjsonFieldのキー値を制限する最良の方法は

名前、アドレス、メールを私たちに共有したい人もいれば、名前を共有したい人もいます。このリストは時折増加する可能性があります。将来的に何が必要になるのかを予測することは非常に難しいです。簡単にするために、私はこの情報を自分のデータベースにJSONレスポンスとして保存したいと思っています。この問題の最良の設計は何ですか?

答えて

1

私はこのように使用します -

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]) 
関連する問題