我正在使用Python编写我的第一个GAE Web应用程序。我需要收集~30个属性并实例化一个Client对象(我正在使用Model.db)。我想在4个单独的顺序表格上完成这个。如果我为每个表单使用单独的页面处理程序,那么提取和引用每个表单上的键或id并将数据放入同一数据实体的最佳方法是什么?如何避免全局变量?
答案 0 :(得分:0)
不确定我是否遵循......您可能需要更清楚地解释一下这个问题。
首先,不要使用全局变量。
您可以在同一个模板上有4个表单,所有表单都使用相同的处理程序。给每个单独的隐藏属性。或者,根据您的模板包,您应该能够通过ID访问表单。
在你的经纪人中:
entity = MyModel.get_by_key_name('my_key_name')
if request.method == 'POST':
if request.POST['hidden_field'] == 'firstform':
entity['prop_1'] = form.prop_1.data
...
if request.POST['hidden_field'] == 'secondform':
...
...
entity.put()
else:
return <template>
您需要修改上面的语法以适合您的模板pkg。