2012-04-10 107 views
1

我剛剛聯繫了Google App Engine。我已經加入了一個項目,沒有關於它如何工作的線索,所以如果這個問題看起來很愚蠢,我很抱歉。無法導入ndb

我的問題是,看着日誌,它說它不能導入ndb。我已經查找了一下,發現這應該在谷歌應用程序引擎的1.6.4版本中默認存在。

我試圖從控制檯導入它,它也不起作用。我安裝的Python和谷歌應用程序引擎是乾淨的,我今天都做了。

我該怎麼辦?

我正在使用Python 2.7和谷歌應用程序引擎1.6.4的Windows工作。

這是代碼行給我的問題:

from wtforms.ext.appengine.ndb import model_form 

以下是錯誤:

INFO 2012-04-10 19:44:34,582 dev_appserver.py:2884] "GET/ HTTP/1.1" 500 - ERROR 2012-04-10 19:47:05,239 wsgi.py:189] Traceback (most recent call last): File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 187, in Handle handler = _config_handle.add_wsgi_middleware(self._LoadHandler()) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 236, in _LoadHandler import(cumulative_path) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1850, in load_module return self.FindAndLoadModule(submodule, fullname, search_path) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1722, in FindAndLoadModule description) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1665, in LoadModuleRestricted description) File "C:\Users\chobeat\workspace\pappa Mi\py\main.py", line 38, in from py.comments import * File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1850, in load_module return self.FindAndLoadModule(submodule, fullname, search_path) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1722, in FindAndLoadModule description) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1665, in LoadModuleRestricted description) File "C:\Users\chobeat\workspace\pappa Mi\py\comments.py", line 20, in from py.form import IspezioneForm, NonconformitaForm, DietaForm, NotaForm File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1850, in load_module return self.FindAndLoadModule(submodule, fullname, search_path) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1722, in FindAndLoadModule description) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 676, in Decorate return func(self, *args, **kwargs) File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", line 1665, in LoadModuleRestricted description) File "C:\Users\chobeat\workspace\pappa Mi\py\form.py", line 6, in from wtforms.ext.appengine.ndb import model_form ImportError: No module named ndb

+0

您需要向我們展示從日誌中的堆棧跟蹤 - 不要讓我們猜測你在那裏看到什麼。 – 2012-04-11 01:51:07

回答

3

您需要導入這樣的:

from google.appengine.ext import ndb

如果你只是說import ndb你錯過了s導入路徑信息。不要害怕將有問題的代碼複製到您的問題中。通常,這將提供重要線索。

更新: WTForms不包含在AppEngine SDK中。您需要在您的系統上登錄install it

+0

mmm ok,它在控制檯中工作,但stil在主項目中不起作用。我已經從存儲庫下載它,它應該工作。無論如何,我要編輯主帖。 – Chobeat 2012-04-10 19:37:36

+0

@Adam他不是試圖導入ndb,而是從wtforms導入model_form。它沒有一個ndb包。 – aschmid00 2012-04-11 14:33:18

+0

@ aschmid00,是的,我明白了。他在我回答了這個問題之後補充了一大堆信息,並且我更新了它以反映這一點。我懷疑他沒有安裝WTForms。 – 2012-04-11 15:05:28

0
from wtforms.ext.appengine.ndb import model_form 

無法正常工作。 wtforms沒有ndb包。 它應該是:

from wtforms.ext.appengine.db import model_form