DjangoはPostgreSQL用のJSONFieldをサポートしています。例を次に示します
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
また、このリンクで詳細を読むことができます https: //docs.djangoproject.com/en/dev/ref/contrib/postgres/fields/#jsonfield
また、postgresqlでHStoreFieldを試すこともできます。HStoreFieldはJSONFieldよりも高速です。HSTOREを使用するには、PostgresqlでHstore拡張機能を有効にする必要があります
postgres_prompt=> create extension hstore;
移行ファイルにこれを追加する必要があります
from django.contrib.postgres.operations import HStoreExtension
class Migration(migrations.Migration):
...
operations = [
HStoreExtension(),
...
]
モデルでHstoreを使用する例を次に示します。
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
これについて詳しくは、l: https:にアクセスしてください。 //docs.djangoproject.com/en/1.9/ref/contrib/postgres/fields/#hstorefield