Database migration operations¶
All of these operations are available from
Creating extension using migrations¶
You can create a PostgreSQL extension in your database using a migration file. This example creates an hstore extension, but the same principles apply for other extensions.
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;.
hstoreextension and also sets up the connection to interpret hstore data for possible use in subsequent migrations.