sql >> データベース >  >> RDS >> PostgreSQL

シンプルなJSONフィールドでDjangoとPostgresをスピードアップ

    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



    1. エラー2006(HY000):MySQLサーバーがなくなりました

    2. OracleへのEFクエリがORA-12704をスローします:文字セットの不一致

    3. MySQL 5.7:単純なJSON_ARRAYを行に変換する

    4. MySQLクエリの3時間の時間間隔