我已经查看了应用程序引擎python教程错误的问题。它没有回答我的问题,所以这不是一个重复的问题:)
我正在学习谷歌应用程序引擎Python教程。当我试图运行第4部分"使用用户服务"中的示例时,遇到了麻烦。当我按照指示操作时,我会得到这个错误:
2015-02-06 17:56:22 Running command: "['C:\Python27\pythonw.exe', 'C:\Program Files (x86)\Google\google_appengine\dev_appserver.py', '--skip_sdk_update_check=yes', '--port=8080', '--admin_port=8000', 'C:\Users\plankton\google_app_eng\helloworld\helloworld']"
INFO 2015-02-06 17:56:26,164 devappserver2.py:745] Skipping SDK update check.
INFO 2015-02-06 17:56:26,203 api_server.py:172] Starting API server at: http://localhost:52731
INFO 2015-02-06 17:56:26,210 dispatcher.py:186] Starting module "default" running at: http://localhost:8080
INFO 2015-02-06 17:56:26,213 admin_server.py:118] Starting admin server at: http://localhost:8000
ERROR 2015-02-07 01:57:04,624 wsgi.py:263]
Traceback (most recent call last):
File "C:Program Files (x86)Googlegoogle_appenginegoogleappengineruntimewsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "C:Program Files (x86)Googlegoogle_appenginegoogleappengineruntimewsgi.py", line 302, in _LoadHandler
raise err
ImportError: <module 'main' from 'C:Usersplanktongoogle_app_enghelloworldhelloworldmain.pyc'> has no attribute app
INFO 2015-02-06 17:57:04,651 module.py:718] default: "GET / HTTP/1.1" 500 -
以下是教程中我遇到问题的部分的链接:使用用户服务有人能帮我吗?
谢谢!
更新:谢谢亚历克斯!我想我明白你的意思。
$ diff main.py main.py.500err
44c44
< app = webapp2.WSGIApplication([
---
> application = webapp2.WSGIApplication([
helloworld
时,我使用"谷歌应用程序引擎启动器"来创建项目,而不是从启动器外部创建文件,并通过选择File menu, Add Existing Application...
,然后选择helloworld
来创建项目
无论您做了什么,您的main.py
都有一个名为app
的全局对象,而不是,因为如果您遵循了教程,它应该有一个全局对象。
你能向我们展示一下你认为会在main.py
中制作一个名为app
的全局对象(WSGI应用程序)的部分吗?然后我们可以试着帮助解释为什么这部分没有。还是你完全忽略了那个不那么微小的方面?-)
如果你的app.yaml
的handlers:
部分说script:
后面跟着main.app
,这意味着这些URL将由一个名为app
的WSGI应用程序对象处理,该对象构建并容纳在你的main.py
中(runtime:
的值为python27
,我敢打赌这就是你正在使用的)。
如果你告诉系统(通过app.yaml
中的条目)在main
中查找名称app
,但那里没有这样的全局名称,猜猜你得到了什么。。。?
A-yup,正好一条错误消息<module 'main' from [snip] > has no attribute app
——因为你的"模块main
",你猜怎么着没有属性app
!那么,修复这个错误消息非常清楚的问题呢?-)