2012-06-06 87 views
3

我試圖轉移我的應用程序,一切工作正常,直到我在app.yaml中 改變從線程:假線程:真

我收到的錯誤是:

遷移GAE應用在Python 2.5到2.7

線程不能與CGI處理程序被激活:A/B/xyz.app

經過一番google搜索,我發現:

僅腳本頂層目錄作爲處理程序工作,因此如果在子目錄中有任何子目錄,則需要將其移動,並且腳本引用也會相應更改:

- 網址:/什麼
#這不工作...
#腳本:LIB/some_library/handler.app
#......這確實工作
腳本:handler.app

是否有任何解決方法(如果上述研究是有效的),因爲我不想改變我的項目hirarchy?

+0

謝謝你們有用的答案。 – EMM

回答

4

引用它們可以讓你的處理程序,只要在任何地方,因爲它是一個有效的Python導入路徑。

我的app.yaml充滿條目像

- url: /_ah/queue/deferred 
    script: google.appengine.ext.deferred.application 
    login: admin 

的文件夾需要他們__init__.py,使他們爲模塊的工作,但你通常可以用.

更換任何/或者做丹尼爾建議,並注意,你可能必須首先破壞sys.path包括lib目錄,然後導入處理程序。

2

把主文件中的頂級目錄和導入所有的處理程序存在,然後通過該文件