Django stöder JSONField för PostgreSQL, här är exemplet
from django.contrib.postgres.fields import JSONField
from django.db import models
class Dog(models.Model):
name = models.CharField(max_length=200)
data = JSONField()
def __str__(self): # __unicode__ on Python 2
return self.name
du kan också läsa mer om det på denna länk https://docs.djangoproject.com/en/dev/ref/contrib/postgres/fields/#jsonfield
Du kan också prova HStoreField i postgresql, HStoreField är snabbare än JSONField, för att använda HSTORE måste du aktivera Hstore-tillägget i Postgresql
postgres_prompt=> create extension hstore;
i din migreringsfil måste du lägga till detta
from django.contrib.postgres.operations import HStoreExtension
class Migration(migrations.Migration):
...
operations = [
HStoreExtension(),
...
]
här är ett exempel på hur du använder Hstore i dina modeller:
from django.contrib.postgres.fields import HStoreField
from django.db import models
class Dog(models.Model):
name = models.CharField(max_length=200)
data = HStoreField()
def __str__(self): # __unicode__ on Python 2
return self.name
för att veta mer om detta gå till l:https://docs.djangoproject.com/en/1.9/ref/contrib/postgres/fields/#hstorefield