2012-09-05 2 views
0

PostgreSQL에 "tests"라는 데이터베이스가 있습니다. 그리고 나는 syncdb에 장고와 함께 sh 스크립트를 작성하고 테스트를 실행 한 다음 모든 테이블을 삭제하려고한다. 누구나 적절한 해결책을 제안 할 수 있습니까? 스크립트의 비트 :Django postgresql이 모든 테이블과 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 

답변

3

지금까지 내가 아는 한, django can do this for you. < - 구식

사실, 조금 바뀌 었습니다. :). 는하지만 여전히 가능 :

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

이 의지 파이프의 dbshellsqlclear 관리-명령의 출력. 이 차례로 실행합니다.

sqlclearDROP TABLE ... sql-statements를 출력합니다.

+0

좋아요! 어떻게 설명 할 수 있니? – jononomo

+0

내 편집 된 대답에 봐, :) –

관련 문제