我使用GAE和python 2.7编写了一个简单的程序,但是在将数据存储到db时遇到了一些问题。我的代码如下:
class MemberInfo(db.Model):
firstName = db.StringProperty(required=True)
class RegisterPageButtonDown(webapp2.RequestHandler):
def post(self):
memberInfo = MemberInfo()
memberInfo.firstName = self.request.get('firstName')
memberInfo.put()
“ memberInfo = MemberInfo()”中出现错误,表示“属性firstName是必需的”。我确信我把数据放在html表单中,方法也是post。
我一直坚持这个问题整晚,谢谢你的回复。
答案 0 :(得分:1)
您已将firstName
属性设置为required,因此在实例化对象时,必须为该属性提供值,例如:
memberInfo = MemberInfo(firstName = self.request.get('firstName'))
或者,您可以在模型中不要求firstName
。
答案 1 :(得分:1)
在您从请求中获取值之前,错误来自函数的第一行。这是因为在实例化对象时需要传入该值。
firstName = self.request.get('firstName')
memberInfo = MemberInfo(firstName=firstName)
(另请注意,Python的常规命名约定意味着变量和属性为lower_case_with_underscore
,而不是camelCase
。)