2011-10-04 7 views
6

나는 Heroku를 Python으로 시험해보고 있는데, "hello word" example with Flask을 성공적으로 실행했습니다.Heroku에서 Python2.7을 사용하여 sqlite3 가져 오기

이제는 sqlite3과 Flask를 사용하여 매우 기본적인 응용 프로그램을 배포하려고합니다. 응용 프로그램이 작동하고 있다는 것을 알고 있습니다. 하지만 난 그것을 작동시키는 데 문제가 있고, 문제가 sqlite로 의심됩니다.

$ heroku run python  
Running python attached to terminal... up, run.2 
Python 2.7.1 (r271:86832, Jun 26 2011, 01:08:11) 
[GCC 4.4.3] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import sqlite3 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python2.7/sqlite3/__init__.py", line 24, in <module> 
    from dbapi2 import * 
    File "/usr/local/lib/python2.7/sqlite3/dbapi2.py", line 27, in <module> 
    from _sqlite3 import * 
ImportError: No module named _sqlite3 
>>> 

내가 requirements.txt에 무언가를 추가해야합니까, 종속성을 사용하는 파일 :

나는 Heroku가 여기 가져 오기 오류 로그를 제공하는 파이썬 쉘을 시작했을 때? 지금까지 Flask==0.8 만 포함되어 있습니다. 예제에서 Import datetime은 예상대로 작동합니다. 나는 heroku logs으로 보았고 다른 중요한 메시지 없이도이 메시지가 나타납니다.

Heroku에서 일부 sqlite3을 사용할 방법이 있습니까? 도움 주셔서 감사합니다.

답변

1

sqlite는 영구 쓰기 가능한 파일 시스템이 필요하기 때문에 Heroku에서는 불가능합니다. Heroku는 영구적 인 쓰기 가능한 파일 시스템을 제공하지 않으므로 sqlite3은 작동하지 않습니다.

중요 사항 : Heroku는 분산 환경입니다. 즉, 응용 프로그램이 여러 프로세스에서 많은 시스템에서 실행될 수 있습니다. 귀하의 경우, 이것은 여러 개의 sqlite3 인스턴스 (각각 로컬로 실행)를 생성 할 수 있습니다. Heroku Devcenter - Read-only Filesystem

+0

감사합니다, 나는 정말 루비 레일에 가능하다고 생각하지만, 하나하지 않는 것 같습니다 : 또한

은 참조하십시오. 나는 PostgreSQL을 사용할 것이다. –

관련 문제