【发布时间】:2013-06-06 06:41:58
【问题描述】:
我有以下类定义:
class TestHandler(webapp2.RequestHandler):
def get(self):
self.msg = "hello world"
self.render_form() # modifies self.msg
def post(self):
print self.msg
#...
#...
#...
self.render_form()
运行时出现如下错误:
文件“/Users/mhalsharif/Desktop/wordsnet1/ascii-chan/main.py”,第 129 行,在帖子中 打印 self.msg AttributeError:“AnswersHandler”对象没有属性“msg”
我只是想在“msg”属性中保存一个字符串,并在调用 post() 时打印它。为什么我不能这样做?以及如何解决?
【问题讨论】:
-
当
post在没有get的情况下被调用并且self.msg尚未定义时,您可能没有处理这种情况。 -
我在 TestHandler 的构造函数中添加了语句:self.msg="hello first" 但 post 只打印 self.msg 的初始值(即“hello first”)而不是“hello world ”。我检查了日志控制台,get() 总是在 post() 之前调用!
标签: python jinja2 webapp2 requesthandler