我有以下使用 Jinja2 模板引擎的客户端前端 HTML:
{% for record in result %}
<textarea name="remark">{{ record.remark }}</textarea>
<input type="submit" name="approve" value="Approve" />
{% endfor %}
因此 HTML 可能会显示超过 1 组的 textarea 和提交按钮。
后端 Python 代码使用模型从 gql 查询中检索可变数量的记录,并将其传递给结果中的 Jinja2 模板。当点击提交按钮时,它会触发 post 方法来更新记录:
def post(self):
if self.request.get('approve'):
updated_remark = self.request.get('remark')
record.remark = db.Text(updated_remark)
record.put()
但是,在某些情况下,更新的记录不是与单击的提交按钮对应的记录(例如,如果用户单击记录 1 提交,记录 2 的备注会更新,但记录 1 不会更新)。
我认为这是由于重复的属性名称注释。我可以使用 JavaScript/jQuery 生成不同的属性名称。问题是,如何对后端 Python 进行编码以获取 JavaScript 生成的(可变数量)名称?
谢谢。