繁体   English   中英

ImportError:没有名为not_found的模块

[英]ImportError: No module named not_found

# -*- coding: UTF-8 -*-
import google
print google.__path__.append("C:\Program Files(x86)\Google\google_appengine")
import webapp2
form ="""
<form method ="post" action= "/testform">
<input name="q">
<input type="submit">
</form>    
"""
class MainPage(webapp2.RequestHandler):
    def get(self):
        self.response.headers['Content­Type'] = 'text/plain'
        self.response.out.write(form)
class TestHandler(webapp2.RequestHandler):
    def get(self):
        q = self.request.get("q")
        self.response.out.write(q)

app = webapp2.WSGIApplication([
('/', MainPage),
('/testform',TestHandler),
], debug=True)

当我运行这个简单的应用程序时,它显示文本区域和提交,但是当我提交时出现500错误。 在电源壳上,我得到以下信息:-

Traceback (most recent call last):
File "C:\Program Files   (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
ImportError: No module named not_found
INFO     2017-01-14 21:16:13,831 module.py:806] default: "POST /testform HTTP/1.1" 500 -

我猜您使用的是app.yaml ,这是Google AppEngine Docs中的示例。

如果您从app.yaml中删除了两行以下,则可以修复。

runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /
  script: home.app

- url: /index\.html
  script: home.app

- url: /stylesheets
  static_dir: stylesheets

 - url: /(.*\.(gif|png|jpg))$
   static_files: static/\1
   upload: static/.*\.(gif|png|jpg)$

- url: /admin/.*
  script: admin.app
  login: admin

- url: /.*              // <- delete this
  script: not_found.app // <- delete this

您的代码中有一些缩进错误,并且您需要表单方法的post方法。 参见下面的固定代码。

class MainPage(webapp2.RequestHandler):
    def get(self):
        self.response.headers['Content­Type'] = 'text/plain'
        self.response.out.write(form)

class TestHandler(webapp2.RequestHandler):
    def post(self):
        q = self.request.get("q")
        self.response.out.write(q)

我不确定这是否能解决您的所有问题,但至少可以使您更接近。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM