2013-07-06 5 views
0

Я пытаюсь получить систему миграции Alembic, настроенную для моего приложения Flask в течение последних 7 часов без успеха. Любые идеи относительно того, что я делаю неправильно?Alembic Migrations for Flask

Я пробовал все решения, которые я нашел здесь, но они, похоже, не работали для меня.

I get the following error after running the commands: 
$ heroku run alembic revision -m "please work" --autogenerate 
Running `alembic revision -m please work --autogenerate` attached to terminal... up, run.6050 
Traceback (most recent call last): 
    File "/app/.heroku/python/bin/alembic", line 9, in <module> 
    load_entry_point('alembic==0.5.0', 'console_scripts', 'alembic')() 
    File "/app/.heroku/python/lib/python2.7/site-packages/pkg_resources.py", line 337, in load_entry_point 
    return get_distribution(dist).load_entry_point(group, name) 
    File "/app/.heroku/python/lib/python2.7/site-packages/pkg_resources.py", line 2281, in load_entry_point 
    return ep.load() 
    File "/app/.heroku/python/lib/python2.7/site-packages/pkg_resources.py", line 1991, in load 
    entry = __import__(self.module_name, globals(),globals(), ['__name__']) 

ImportError: Нет модуль с именем конфигурации

Кроме того, обратите внимание, что я пытаюсь заставить его работать на Heroku

Часть моего файла env.py:

from alembic import context 
config = context.config 

Буду признателен за любую помощь, которую я могу получить, или, может быть, предложения к более простому решению для легкой миграции с помощью Flask.

Спасибо.


Вот как я добавляю миграцию на Heroku. Это верно?

heroku run alembic revision -m "add Content table" --autogenerate 
+0

Как вы себя чувствуете _generating_ сценарий миграции на герою? – second

+0

@second, я обновил вопрос, соответственно, с этой информацией, heroku run alembic revision -m "add Content table" --autogenerate – GangstaGraham

+0

О, хорошо, я его переделал - полностью исключая герою (кроме URL-адреса базы данных), и это сработало! По какой-то причине я думал, что должен запустить ее с серверов Heroku. – GangstaGraham

ответ

5

Вы должны генерировать ревизии только на вашем компьютере, на производстве (Heroku в данном случае), вы должны быть только их применением.

Вы можете настроить Alembic для переноса вашей производственной машины с вашей машины разработки. Аргумент командной строки может указывать на другой URL-адрес базы данных. See the docs for an example.

+0

Спасибо, наслаждайся мнимым шоколадным печеньем! +1 – GangstaGraham

+0

Ссылка не работает Пожалуйста, исправьте, если возможно – alexche8

Смежные вопросы