Django中模型Model添加JSON类型字段的方法

yipeiwu_com5年前Python基础

本文实例讲述了Django中模型Model添加JSON类型字段的方法。分享给大家供大家参考。具体如下:

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() 

使用很方便:

复制代码 代码如下:
Category.objects.create(name="C1", other=(1,2,3,4,5))

所有可以被json序列化的类型都可以直接赋值给other字段,很方便吧。

希望本文所述对大家的Python程序设计有所帮助。

相关文章

对python中的高效迭代器函数详解

对python中的高效迭代器函数详解

python中内置的库中有个itertools,可以满足我们在编程中绝大多数需要迭代的场合,当然也可以自己造轮子,但是有现成的好用的轮子不妨也学习一下,看哪个用的顺手~ 首先还是要先im...

python TF-IDF算法实现文本关键词提取

TF(Term Frequency)词频,在文章中出现次数最多的词,然而文章中出现次数较多的词并不一定就是关键词,比如常见的对文章本身并没有多大意义的停用词。所以我们需要一个重要性调整系...

深入浅出分析Python装饰器用法

本文实例讲述了Python装饰器用法。分享给大家供大家参考,具体如下: 用类作为装饰器 示例一 最初代码: class bol(object): def __init__(self...

python3 property装饰器实现原理与用法示例

本文实例讲述了python3 property装饰器实现原理与用法。分享给大家供大家参考,具体如下: 学习python的同学,慢慢的都会接触到装饰器,装饰器在python里是功能强大的语...

Python中的单继承与多继承实例分析

本文实例讲述了Python中的单继承与多继承。分享给大家供大家参考,具体如下: 单继承 一、介绍 Python 同样支持类的继承,如果一种语言不支持继承,类就没有什么意义。派生类的定义如...