2016-05-03 83 views
7

我试图在Django 1.9中使用新的JSONField设置模型文件。我找到了使用postgres的例子,但没有使用MySql。在与postgres的例子中,他们做了一个Django 1.9 - 模型中的JSONField

from django.contrib.postgres.fields import JSONField 

我该如何去导入它的MySql? 感谢

+4

我认为JSONField可能是一个PostgreSQL的字段 – Doddie

回答

1
# Install jsonfield package 
pip install jsonfield 

# Define my model 
from django.db import models 
import jsonfield 

class MyModel(models.Model): 
    the_json = jsonfield.JSONField() 

更多细节:https://pypi.python.org/pypi/django-jsonfield

+0

我试图使用Django 1.9提供的内置功能。 –

+0

@ Rjay155你不能没有postgres。你甚至可以从'django.contrib.postgres'中导入它。您唯一的选择是使用第三方模块。 – Anonymous

13

在其他的答案说,Django的本地JSONField(为1.9和1.10)是一个针对PostgreSQL。

幸运的是,MySQL 5.7+附带了一个native JSON datatype。你可以用django-mysql包和Django的1.8+

pip install django-mysql

from django.db import models 
from django_mysql.models import JSONField 

class MyModel(models.Model): 
    my_json_field = JSONField() 

了解更多关于django_mysql JSONField here其添加到您的Django项目。

+0

这应该是答案 – kbuilds