2013-07-06 64 views
0

我一直在試圖讓我的Flask應用程序配置Alembic遷移系統過去7個小時沒有成功。任何想法,我做錯了什麼?Alembic遷移的瓶

我試過了我在這裏找到的所有解決方案,但它們似乎並不適合我。

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__']) 

導入錯誤:沒有模塊名爲config

此外,請注意,我試圖讓它在Heroku

我env.py文件的一部分工作:

from alembic import context 
config = context.config 

我很感激任何幫助,或者可以提出一個簡單的解決方案,以便與Flask輕鬆遷移。

謝謝。


這就是我如何在Heroku上添加遷移。它是否正確?

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

你是怎麼在heroku上生成遷移腳本的? – second

+0

@second,我已經用這個信息更新了相應的問題,heroku運行alembic修訂版-m「添加內容表」--autogenerate – GangstaGraham

+0

噢好吧,我重新編譯它 - 完全不包括heroku(除了數據庫url),它的工作!出於某種原因,我想我必須從Heroku服務器上運行它 – GangstaGraham

回答

5

您應該只在您的開發機器上生成修訂版本(在這種情況下爲Heroku),您應該只應用它們。

您可以設置Alembic將您的生產機器從開發機器遷移。命令行參數可以指示它指向不同的數據庫URL。 See the docs for an example.

+0

謝謝,享受想象中的巧克力餅乾! +1 – GangstaGraham

+0

鏈接無效請儘可能修復 – alexche8