Loading docs/ref/contrib/postgres/fields.txt +18 −0 Original line number Diff line number Diff line Loading @@ -257,6 +257,24 @@ HStoreField 2. Setup the hstore extension in PostgreSQL before the first ``CreateModel`` or ``AddField`` operation by adding a migration with the :class:`~django.contrib.postgres.operations.HStoreExtension` operation. For example:: from django.contrib.postgres.operations import HStoreExtension class Migration(migrations.Migration): ... operations = [ HStoreExtension(), ... ] Creating the extension requires a database user with superuser privileges. If the Django database user doesn't have superuser privileges, you'll have to create the extension outside of Django migrations with a user that has the appropriate privileges. In that case, connect to your Django database and run the query ``CREATE EXTENSION IF NOT EXISTS 'hstore';`` You'll see an error like ``can't adapt type 'dict'`` if you skip the first step, or ``type "hstore" does not exist`` if you skip the second. Loading Loading
docs/ref/contrib/postgres/fields.txt +18 −0 Original line number Diff line number Diff line Loading @@ -257,6 +257,24 @@ HStoreField 2. Setup the hstore extension in PostgreSQL before the first ``CreateModel`` or ``AddField`` operation by adding a migration with the :class:`~django.contrib.postgres.operations.HStoreExtension` operation. For example:: from django.contrib.postgres.operations import HStoreExtension class Migration(migrations.Migration): ... operations = [ HStoreExtension(), ... ] Creating the extension requires a database user with superuser privileges. If the Django database user doesn't have superuser privileges, you'll have to create the extension outside of Django migrations with a user that has the appropriate privileges. In that case, connect to your Django database and run the query ``CREATE EXTENSION IF NOT EXISTS 'hstore';`` You'll see an error like ``can't adapt type 'dict'`` if you skip the first step, or ``type "hstore" does not exist`` if you skip the second. Loading