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?

有帮助吗?

解决方案

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.

其他提示

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top