2013-06-04 55 views
0

我使用bottle創建了OpenERP的api,當我嘗試使用apache配置wsgi時。嘗試導入時出錯Apache/mod_wsgi上的Bottle-powered web應用程序

儘管Apache服務器導入Log顯示

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

我檢查當前目錄它打印CWD和導入文件在同一目錄下它仍然顯示錯誤

在這裏,我上傳了我的WSGI

import os 
    os.chdir(os.path.dirname(__file__)) 
    import bottle 
    print os.getcwd() 
    import api as application 
    application = bottle.defaut_app() 
+0

代碼中存在一個(不同的)錯誤:將api作爲「應用程序」導入,但是然後使用「application」作爲新變量的名稱。爲什麼不只是'import api'? –

+0

我只是嘗試導入爲obj但導入API也不能正常工作 – senthilnathang

+0

仍然需要一隻手?還是解決了? –

回答

0

代碼,我認爲我有一個類似的問題,我結束了我的WSGI這樣做:

import sys 
import os 
import bottle 

sys.path.append('%path to module%') 

import %modulename% 


application = bottle.default_app() 

在您的PY,你必須輸入:

from bottle import default_app 

這個工作。

+0

pblm導入模塊不工作 – senthilnathang

+0

是的。你看我先把目錄下的文件夾添加到sys.path中。這樣我可以確定它會被發現。然後我將它導入並找到它。你試過了嗎? – pypat

+0

當我打印sys路徑它是說沒有應用程序= sys.path.append('/ var/www/api/api.py') 打印應用 – senthilnathang

1

什麼是您的sys.path

它必須包含您的.py文件的目錄,而不是文件名本身。例如,

sys.path.append('/var/www/api') 
# and then, to see its new value: 
print sys.path.append 

另請注意我是如何打印sys.path的值;您在其中一條評論中執行的方式(從append打印返回值)不正確。

+0

現在它打印正確感謝的人我會測試整個API並把結果這裏 – senthilnathang

+0

很酷,很高興幫助。如果這解決了你的問題中的'ImportError'問題,請考慮接受我的答案。謝謝! –

相關問題