【发布时间】:2018-05-30 02:37:49
【问题描述】:
您好,我正在使用 django + bootstrap4 来渲染表单。我在表格上有“提交”和“取消”按钮。我正在使用 ModelForm 并为大多数表单属性分配了验证器。
模板文件
<form action="{% url 'actor-create' %}" method="post" class="w-25 mx-auto">
{% csrf_token %}
{% bootstrap_form form layout="horizontal" %}
<button class="btn btn-primary" type="submit"><i class="fas fa-plus"></i> Save</button>
<button class="btn btn-primary" type="submit"><i class="fas fa-times"></i> Cancel</button>
</form>
在视图中
def actor_create(request):
# if this is a POST request we need to process the form data
if request.method == 'POST':
print(request.POST)
if "cancel" in request.POST:
return HttpResponseRedirect('/')
..... rest of the code
当按下取消按钮时,表单属性的验证会阻止表单提交。所以视图功能永远不会被执行。
我想知道当表单被取消时如何避免验证?
在 Q&A 之后有一个基于 JavaScript 的解决方案,我最好不想为我网站中的每个表单编写这样的代码。 How to cancel form submission?
【问题讨论】:
-
只需将取消按钮设为链接即可?
-
是的,这行得通!但这是标准做法吗?
标签: django bootstrap-4 modelform