2017-11-22 3 views
0

파이썬 2.7내가이 오류가 마지막 줄에 파이썬에서

if __name__ == '__main__': 
    import os 
    app = Flask(__name__) 
    os.system("dropdb biobreak") 
    os.system("createdb biobreak") 
    os.system("CREATE EXTENSION postgis") 

을 확장 PostGIS와를 만들 : CREATE : 찾을 수 없습니다.

구문을 가져 와서 가져 오려고했는데 구문이 미쳐 버렸습니다.

는 편집 :

import subprocess 
    cr_ext = "create extension postgis;" 
    try: 
     subprocess.check_call([ 
       'psql', '-q', 
       '-U', 'vagrant', 
       '-f', 'cr_ext', 
       'biobreak' 
      ]) 
    except subprocess.CalledProcessError, ex: 
     print "Failed to invoke psql: {}".format(ex) 

있어이 오류 :

cr_ext : psql를 호출하지 못했습니다 해당 파일이나 디렉토리 : 명령 '['psql의 '

나는 다음과 같은 명령을 시도 '-q', '-U', '-u', '-v', '-f', 'cr_ext', 'biobreak'] '가 0이 아닌 종료 상태 1을 반환했습니다.

답변

0

좋아요, 알았어요. 변수 대신에, 내 명령은 파일에 있어야합니다. 따라서 No file or directory 오류 메시지가 표시됩니다. cr_ext.sql => '확장 게시물을 만드십시오;

import subprocess 
try: 
    subprocess.check_call([ 
     'psql', '-q', 
     '-U', 'vagrant', 
     '-f', '/home/vagrant/src/projects/biobreak/cr_ext.sql', 
     'biobreak' 
    ]) 
except subprocess.CalledProcessError, ex: 
    print "Failed to invoke psql: {}".format(ex) 
: 여기

는 작업 코드