Google App Engine:从帖子数据创建数据存储实体



我正在努力使用Google App Engine实施一项小型在线调查。我已经进行了调查。我现在需要的是,可以将参加该调查的人的所有输入存储在数据库中。

实现这一目标的直接方法是为每个输入创建一个具有财产的实体,并每次提交填写调查时创建此类实体。

由于我的调查中有大约30个输入,我想知道是否有一种更优雅的或至少一种不太繁琐的方法将POST请求中的数据转换为数据存储实体。

谢谢。

wtforms具有GAE扩展名,可用于从模型和模型中生成表单。

使用wtforms,您的表单字段html可以为您生成,但是我们 让您在模板中自定义它。这使您可以维护 分离代码和演示文稿,并保留这些混乱的参数 从您的Python代码中。因为我们努力争取松散的耦合,所以你 也应该能够在您喜欢的任何模板引擎中做到这一点。

http://wtforms.simplecodes.com/docs/1.0.2/ext.html

wtforms.ext.appengine.db.model_form(model, base_class=Form, only=None, exclude=None, field_args=None, converter=None)

创建并返回给定db.model的动态wtforms.form类 班级。表格类可以按原样使用或用作 扩展表单类,然后可以混合非模型相关字段, 带有其他模型表格的子形式以及其他可能性。

基于表单创建模型涉及创建表单对象,然后将邮政数据传递给其。

http://wtforms.readthedocs.org/en/latest/forms.html#the-form-class

formdata - 用于传递来自enduser的数据,通常 request.post或等效。formdata应该是某种 请求data包装器可以从表单中获取多个参数 输入和值是Unicode字符串,例如werkzeug/django/webob 多边形

,这里有一个类似的问题:wtforms错误:typeError:formdata应该是多餐具包装器

,例如

def post(self):
   form = model_form(Ticket)
   form_object = form(formdata=self.request.POST)

我刚刚发现的一个随机示例。

最新更新