0

私は GAE と python 2.7 を使用して 1 つの簡単なプログラムを作成していますが、データを 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形式で入れたと確信しており、メソッドもポストです。

一晩中この問題に悩まされていました。返信ありがとうございます。

4

2 に答える 2

1

プロパティをrequiredに設定したfirstNameので、オブジェクトをインスタンス化するときは、そのプロパティに値を指定する必要があります。例:

memberInfo = MemberInfo(firstName = self.request.get('firstName'))

firstNameまたは、モデルで必須ではないようにすることもできます。

于 2012-08-06T16:54:19.527 に答える
1

エラーは、リクエストから値を取得する前に、関数の最初の行から発生しています。これは、オブジェクトをインスタンス化するときにその値を渡す必要があるためです。

firstName = self.request.get('firstName')
memberInfo = MemberInfo(firstName=firstName)

(Pythonの通常の命名規則は、変数とプロパティがlower_case_with_underscoreではなく、であることを意味することにも注意してくださいcamelCase。)

于 2012-08-06T16:54:30.343 に答える