在一个表单中,我有两个提交按钮。根据用户单击哪个按钮,我希望form.is_valid()上的重定向成为页面A或页面B。您知道我如何能够为每个提交按钮附加一个不同的值并将该值传递给POST请求,以便我可以在我的视图中对其进行评估?
template.html
<div class="submitbutton"">
<button type="submit">
Submit A
</button>
</div>
<div class="submitbutton"">
<button type="submit">
Submit B
</button>
</div>
views.py
if request.method == 'POST':
<!-- a bunch of code that works -->
if user_clicked_SubmitA:
return redirect('profile')
if user_clicked_SubmitB:
return redirect('home')
谢谢!
答案 0 :(得分:2)
将login.microsoftonline.com{tenantId}/common
属性添加到您的按钮:
name
并在视图中检查它:
<button type="submit" name="btn1" value="btn1">Button 1</button>
<button type="submit" name="btn2" value="btn2">Button 2</button>
更新:向def my_view(request):
if request.POST.get('btn1'):
# first button clicked
if request.POST.get('btn2'):
# second
标签添加了value
属性。
答案 1 :(得分:1)
您可以执行以下操作
def my_view(request):
post_data = request.POST
if '_submit1' in post_data:
return HttpResponseRedirect("")
elif '_submit2' in post_data:
return HttpResponseRedirect("")
elif '_submit3' in post_data:
return HttpResponseRedirect("")
else:
return HttpResponseRedirect("")
<form action="<view_url>">
<input type="submit" name="_submit1" />
<input type="submit" name="_submit2" />
<input type="submit" name="_submit3" />
</form>