Django==1.7
을 psycopg2==2.5.4
으로 실행 중이며 테스트를 실행할 수 없습니다. django 1.7 응용 프로그램을 테스트 할 수 없습니다
Creating test database for alias 'default'...
Got an error creating the test database: CREATE DATABASE cannot run inside a transaction block
...
Destroying old test database 'default'...
Got an error recreating the test database: current transaction is aborted, commands ignored until end of transaction block
내 데이터베이스 설정
은 매우 기본적인 :DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'mydb',
}
}
사용자 내가 (./manage test <app>
를 실행하여) 내 장고 테스트 케이스 중 하나를 실행하려고하면
, 나는 다음과 같은 오류가 내가 사용하고 있습니다 (우분투 14.04 시스템입니다) postgres 관리자 권한을 가지고 성공적으로 만들 수 있습니다/수동으로 db를 드롭 :
내 모델 마이그레이션이 잘된 것처럼 보입니다. 데이터베이스를 삭제하고 마이그레이션 및 웹 응용 프로그램 기능을 성공적으로 실행할 수 있습니다. 테스트를 실행할 수 없습니다.
동일한 기본 postgres 데이터베이스 설정을 사용하여 같은 시스템에서 다른 사용자와 동일한 테스트를 실행하는 django 1.7 프로젝트가 있습니다.
테스트 실행을 방해 할 수있는 아이디어가 있습니까?
제거 프로세스를 통해이 프로그램이 ['djorm-ext-pool'] (https://github.com/djangonauts/djorm-ext-pool) 앱과 관련이 있음을 확인했습니다. 'djorm_pool'을'INSTALLED_APPS'에서 제거하면 더 이상 오류가 발생하지 않습니다. – dgel
자기 답변에 적합하고 잘 해결되었습니다. 너무 일찍 거래를 성립시켜야합니다. –