我希望用戶的輸入最終使用db.stringListProperty()建模。如果可能的話,輸入格式必須是什麼樣子,以及用戶的輸入如何構建([],引號和逗號等)?我使用jinja2作爲表單模板,如果這很重要的話。 (如何驗證數據輸入是否正確,請額外付款。) 謝謝。用戶可以在html表單中輸入一個沒有javascript的python列表
我從appengine中得到這個錯誤。
raise BadValueError('Property %s must be a list' % self.name)
BadValueError: Property choices must be a list
該錯誤發生在下面的這一行。
person.choices = self.request.get(「選擇」)
class PQ(db.Model):
choices = db.StringListProperty()
key = db.Key.from_path("PQ", ID_id)
person = PQ.get(key)
template_values = {'ID_id':person.key(),
'p': person,
}
path = os.path.join(TEMPLATE_DIR, 'add_person.html')
self.response.out.write(template.render(path, template_values))
class AddPerson(BaseHandler):
def post(self):
ID_id = self.request.get('ID')
key = db.Key.from_path("PQ", ID_id)
person = PQ.get(key)
person.choices = self.request.get('choices')
person.put()
self.redirect("/?ID=%s" % ID_id)
add_person.html
<html>
<body>
<div id="inputdata">
<form action="add_person" method="post" enctype="multipart/form-data">
<label>Enter your list of choices. Your list must follow this format:
["Less","Same","More"] </label>
<input type="textbox" name="choices" size="30" value="{{ p.choices }}"></input><br/>
<input type="submit" value="Submit"></input>
</form>
</div>
</body>
</html>
StackOverflow不是讓人們爲你寫代碼的地方。這是一個請求您編寫的代碼獲得幫助的地方。 – Dancrumb
好的,我編輯了這個問題以包含我的代碼和錯誤消息。 – zerowords