时间:2021-07-01 10:21:17 帮助过:270人阅读
Django里面让Model用于JSON字段,添加一个JSONField自动类型如下:
class JSONField(models.TextField): 
  __metaclass__ = models.SubfieldBase 
  description = "Json" 
  def to_python(self, value): 
    v = models.TextField.to_python(self, value) 
    try: 
      return json.loads(v)['v'] 
    except: 
      pass 
    return v 
  def get_prep_value(self, value): 
    return json.dumps({'v':value}) 
之后就直接为Model定义JSONField类型字段了
class Category(models.Model): name = fields.MedialNameField() other= fields.JSONField()
使用很方便:
所有可以被json序列化的类型都可以直接赋值给other字段,很方便吧。
希望本文所述对大家的Python程序设计有所帮助。