PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Velocizza Django e Postgres con un semplice campo JSON

Django supporta JSONField per PostgreSQL, ecco l'esempio

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

inoltre puoi saperne di più su questo link https://docs.djangoproject.com/en/dev/ref/contrib/postgres/fields/#jsonfield

inoltre puoi provare HStoreField in postgresql, HStoreField è più veloce di JSONField, per usare HSTORE devi abilitare l'estensione Hstore in Postgresql

postgres_prompt=> create extension hstore;

nel tuo file di migrazione devi aggiungere questo

from django.contrib.postgres.operations import HStoreExtension

class Migration(migrations.Migration):
    ...

    operations = [
        HStoreExtension(),
        ...
    ]

ecco un esempio di utilizzo di Hstore nei tuoi modelli:

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

per saperne di più vai a l:https://docs.djangoproject.com/en/1.9/ref/contrib/postgres/fields/#hstorefield