我需要有关看起来像 Gmail 收件箱并且有多个操作的表单的帮助。有一个项目列表,我想用表格包装它,因为每个项目在行的前面都有复选框。因此,当用户选择几个项目时,他可以单击具有不同操作的两个按钮,例如删除和标记已读。
<form action="">
{% for item in object_list %}
<input type="checkbox" id="item.id">
{{ item.name }}
{% endfor %}
<button type="submit" name="delete">Delete</button>
<button type="submit" name="mark_read">Mark read</button>
</form>
如果使用,我可以找到用户单击哪个提交按钮,if 'delete' in request.POST
但我无法引用任何表单,因为我认为 Django 表单无法用未知数量的字段定义。那么如何处理视图中的选定项目?
if request.method == 'POST':
form = UnknownForm(request.POST):
if 'delete' in request.POST:
'delete selected items'
if 'mark_read' in erquest.POST:
'mark selected items as read'
return HttpResponseRedirect('')