django orm JSONField for mysql
Posted
技术标签:
【中文标题】django orm JSONField for mysql【英文标题】: 【发布时间】:2018-01-18 11:31:06 【问题描述】:我正在尝试定义一个模型,其中一列是mysql json type
。在网络上搜索会得到与 django 的 postgresql
支持 JSONField 类型或 django-jsonfield 相关的建议。
目前django没有办法原生支持mysql的json类型。同样在执行inspectdb
时,mysql 中json
类型的列被分配了TextField
类型,并带有注释This field type is a guess.
如何以支持 json 字段的方式声明我的模型?
【问题讨论】:
【参考方案1】:更新
从 Django 3.2 开始,它现在支持 JSONField 并且 django-mysql JSONField 现已弃用。
查看django-mysql。
Django-MySQL通过JSONField加上一些JSON数据库函数来支持JSON数据类型和相关函数。
【讨论】:
它是否与普通的 django 模型一起工作,即来自 django.db 的模型? 好的,看看例子。【参考方案2】:您已经找到django-jsonfield
,但这里有一些您可能感兴趣的近期讨论:
https://groups.google.com/forum/#!searchin/django-developers/mysql$20json%7Csort:relevance/django-developers/zfred27yVPg/U-4iNd_aAQAJ
https://groups.google.com/forum/#!searchin/django-developers/mysql$20json%7Csort:relevance/django-developers/sAgYOqBUvgI/aLQH6vx5CAAJ
AFAIK 目前没有任何原生产品,但人们似乎有兴趣开发您正在寻找的东西。
【讨论】:
以上是关于django orm JSONField for mysql的主要内容,如果未能解决你的问题,请参考以下文章
AttributeError:模块 'django.contrib.postgres.fields' 没有属性 'JSONField'