В моем приложении AppEngine с Python-кодом я получаю следующий код ошибки:
NameError: глобальное имя PandaHugs не определено
Я не могу понять почему, так как я определяю «PandaHugs» над местом, где он называется. Вот код:
#!C:\Python25\python.exe -u
import wsgiref.handlers
from google.appengine.ext import db
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
class PandasHugs(db.Model):
message = db.StringProperty(required=False, multiline=False)
class MainPage(webapp.RequestHandler):
def get(self):
ListOfHugs = db.GqlQuery("SELECT * FROM PandasHugs")
Adder = 0
for PandasHugs in ListOfHugs:
Adder = Adder + 1
self.response.out.write('<html><body>')
self.response.out.write('<h6>Panda has ' + str(Adder) + ' hugs!</h6>')
self.response.out.write("<form action=\"/HugPanda\" method=\"post\"><div><input type=\"text\" name=\"PandaMessage\" value=\"A message for a panda.\"></div><div><input type=\"submit\" value=\"Hug a panda?\"></div></form></body></html>")
class HugAPanda(webapp.RequestHandler):
def post(self):
TheMessage = self.request.get('PandaMessage')
HugForAPanda = PandaHugs(message=TheMessage)
HugForAPanda.put()
self.redirect('/main')
application = webapp.WSGIApplication(
[('/', MainPage), ('/main', MainPage), ('/HugPanda', HugAPanda)],
debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
Кто-нибудь знает, почему это происходит?