Heroku에서 매우 간단한 Flask + SQLAlchemy 사이트를 실행하려고하는데 내 DB를 설정하기 위해 마이그레이션을 어떻게 실행해야하는지 잘 모르겠습니다. 내 env.py
에서 다음 나에게Heroku에서 어떻게 alembic 마이그레이션을 실행해야합니까?
Running `alembic upgrade head` attached to terminal... up, run.1
Traceback (most recent call last):
File "/app/.heroku/venv/bin/alembic", line 12, in <module>
load_entry_point('alembic==0.4.0', 'console_scripts', 'alembic')()
File "/app/.heroku/venv/lib/python2.7/site-packages/alembic/config.py", line 255, in main
CommandLine(prog=prog).main(argv=argv)
File "/app/.heroku/venv/lib/python2.7/site-packages/alembic/config.py", line 250, in main
self.run_cmd(cfg, options)
File "/app/.heroku/venv/lib/python2.7/site-packages/alembic/config.py", line 241, in run_cmd
**dict((k, getattr(options, k)) for k in kwarg)
File "/app/.heroku/venv/lib/python2.7/site-packages/alembic/command.py", line 124, in upgrade
script.run_env()
File "/app/.heroku/venv/lib/python2.7/site-packages/alembic/script.py", line 191, in run_env
util.load_python_file(self.dir, 'env.py')
File "/app/.heroku/venv/lib/python2.7/site-packages/alembic/util.py", line 185, in load_python_file
module = imp.load_source(module_id, path, open(path, 'rb'))
File "alembic/env.py", line 80, in <module>
run_migrations_online()
File "alembic/env.py", line 63, in run_migrations_online
poolclass=pool.NullPool)
File "/app/.heroku/venv/lib/python2.7/site-packages/sqlalchemy/engine/__init__.py", line 349, in engine_from_config
return create_engine(url, **opts)
File "/app/.heroku/venv/lib/python2.7/site-packages/sqlalchemy/engine/__init__.py", line 330, in create_engine
return strategy.create(*args, **kwargs)
File "/app/.heroku/venv/lib/python2.7/site-packages/sqlalchemy/engine/strategies.py", line 64, in create
dbapi = dialect_cls.dbapi(**dbapi_args)
File "/app/.heroku/venv/lib/python2.7/site-packages/sqlalchemy/dialects/sqlite/pysqlite.py", line 289, in dbapi
, 이것은이 (내가 alembic.ini
에있는 기본값) sqlite가 물건을로드하려고 나타낼 것으로 보인다,하지만 난이 : 나는 heroku run alembic upgrade head
를 실행하면, 나는 다음과 같은 오류가 발생합니다
cur_db_uri = config.get_section_option('alembic', 'sqlalchemy.url')
my_db_uri = app.config.get('SQLALCHEMY_DATABASE_URI', cur_db_uri)
config.set_section_option('alembic', 'sqlalchemy.url', my_db_uri)
곳 app
이 플라스크 인스턴스 : 노력으로는 Heroku가 PostgreSQL의 연결을 사용할 수 있도록합니다. 나는 Flask-SQLAlchemy를 사용하여 응용 프로그램에서 DB 사용량을 줄이고 Flask-Heroku를 사용하여 모든 Flask 구성 변수가 Heroku 환경 변수에서 제대로 가져 오는지 확인합니다.
감사합니다. 감사합니다. 감사합니다. – wheaties
이것은 나를 위해 작동하지 않았다, 제발 나를 도와주세요, http://stackoverflow.com/questions/17501082/alembic-migrations-for-flask – GangstaGraham