mirror of
https://github.com/django/django.git
synced 2025-08-04 02:48:35 +00:00
[1.10.x] Fixed #27355 -- Added “Creating extension using migrations” docs.
Backport of 4de8aaf7ff
from master
This commit is contained in:
parent
d978b36414
commit
1b6649c6d1
2 changed files with 33 additions and 21 deletions
|
@ -261,27 +261,8 @@ A more useful index is a ``GIN`` index, which you should create using a
|
|||
To use this field, you'll need to:
|
||||
|
||||
1. Add ``'django.contrib.postgres'`` in your :setting:`INSTALLED_APPS`.
|
||||
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;``
|
||||
2. :ref:`Setup the hstore extension <create-postgresql-extensions>` in
|
||||
PostgreSQL.
|
||||
|
||||
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…
Add table
Add a link
Reference in a new issue