Question

Every time I wipe the database of my Django app during testing (or when cloning or deployin), I have to go into /admin and set up permissions and groups. Where would I put the code that would populate the DB with them and what would it look like?

Was it helpful?

Solution

For this you can use fixtures.

For example:

python manage.py dumpdata auth > fixtures/auth.json

This will store all models of package 'auth' (Users, Groups Relations) into auth.json After Deployment you can use the following command to load:

python manage.py loaddata auth fixtures/auth.json

This will restore your prev state of 'auth'.

Maybe it's good for you to switch to South, a very famous part of Django to migrate databases instead of recreating them.

OTHER TIPS

You can provide fixtures with the initial required data and it will be automatically inserted when you syncdb. See docs

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top