2012-03-13 78 views
0

我想讓我的所有庫,燒瓶和boto都存儲在本地項目中,而不是全局安裝。我在解決這個問題上遇到了一些麻煩。我的文件結構如下:從當地圖書館導入燒瓶

project/ 
    project/ 
     __init__.py 
     libraries/ 
      flask/ 
      boto/ 
     views/ 
      .... 
     modules/ 
      __init__.py 
      .... 
     templates/ 
      .... 
     static/ 
      .... 
    runserver.py 

及相關文件的如下內容:

項目/ runserver.py

from project import app 
app.run(host='0.0.0.0', port=8080, debug=True) 

項目/工程/ _ 初始化 _。 py

from project.libraries.flask.flask import Flask 
app = Flask(__name__) 

import project.views.index 
import project.views.login 

project/project/modules/_ 初始化 _.py

import project.libraries.boto.boto 

兩個瓶中,寶途的進口不工作。該錯誤報告無法找到這些庫。

我在做什麼錯?這是文件佈局(試圖將視圖分隔成多個文件,同時保持所有庫本地)是一個好主意嗎?

謝謝。

+1

如果你想做到這一點,你可能會更好地建立一個'virtualenv'環境。 – 2012-03-13 20:09:41

回答

0

您需要一個project/project/libraries/__init__.py文件。

+0

謝謝。這解決了這個問題。但我也注意到我不得不添加一個燒瓶/ __ init__.py。這可以嗎?或者我應該將內部燒瓶目錄移動到庫文件夾。 – ensnare 2012-03-13 20:09:25

+0

我認爲這取決於你的使用情況 - 你想在那裏檢查燒瓶項目,還是隻有燒瓶包裝可以嗎?通常,當我想控制依賴關係時,我在'__init__'模塊中使用'__path__'擴展名。例如,查看['pkgutil.extendpath'](http://docs.python.org/library/pkgutil.html?highlight=pkgutil#pkgutil.extendpath) – 2012-03-13 20:16:55