2012-12-13 39 views
2

值得注意的是,我使用custom buildpack來啓用coffeescript編譯與node.js.heroku django導入錯誤無模塊名爲_collections

的變化,其中包括遷移後,我在運行遷移

Running `./manage.py migrate talent` attached to terminal... up, run.3366 
Traceback (most recent call last): 
    File "./manage.py", line 8, in <module> 
    from django.core.management import execute_from_command_line 
    File "/app/lib/python2.7/site-packages/django/core/management/__init__.py", line 1, in <module> 
    import collections 
    File "/usr/local/lib/python2.7/collections.py", line 8, in <module> 
    from _collections import deque, defaultdict 
ImportError: No module named _collections 

中,我發現了同樣的錯誤可以通過打開,可觸發heroku run bash shell會話了一下週圍戳後得到了下面的錯誤python repl和運行import collections

回答

2

進一步的戳記顯示,通過將/usr/local/lib/python2.7/:/usr/local/lib/python2.7/lib-dynload/添加到$ PYTHONPATH可以抑制該錯誤。我第一次試圖在buildpack的bin/release文件中嘗試這樣做,但我也有一個PYTHONPATH配置變量,它顯然會覆蓋環境的buildpack設置(因爲它可能應該)。

無論如何修復$ PYTHONPATH使一切都恢復正常,但這感覺很尷尬,就像其他事情出了問題一樣。希望有比我更多的Heroku知識的人可以點亮一些光。

+0

我開始使用Anaconda時遇到同樣的麻煩。我追加到我的sys.path lib-dynload,site-packages,python2.7和lib,它位於我的conda環境中。 – zerocog

相關問題