Django postgresql删除所有表和syncdb

时间:2012-09-05 06:40:16

标签: django postgresql sh postgresql-9.1

我在PostgreSql中有一个名为“tests”的数据库。 我想写sh脚本与django syncdb,运行测试,然后删除所有表。 谁能提出正确的解决方案? 一点脚本:

DJANGO_DATABASE='tests' bin/django-admin.py syncdb  
bin/django-admin.py test MyApplication #tests will use "tests" db
sudo su postgres
psql tests
drop schema public; #i think i can drop schema and then syncdb.. or i'm wrong.
exit

1 个答案:

答案 0 :(得分:3)

据我所知,django can do this for you。 < - 过时

实际上,它改变了一点:)。 但它仍然有可能:

#!/usr/bin/env sh
./manage.py sqlclear | ./manage.py dbshell
./manage.py syncdb

这会将sqlclear management-command的输出传递到dbshell。 它将依次执行它。

sqlclear将输出DROP TABLE ... sql-statements。