django - Django View 中表单提交的不同重定向

标签 django django-forms django-views django-templates

在 Django View 中发送 request.POST 时是否可以重定向到一个页面或另一个页面,具体取决于所使用的按钮?

示例:

<form id="myForm" action='?'>
    <submit button1>
    <submit button2>
</form>

然后在我看来:

if request.method == "POST":
    if form.is_valid() and button1:
        form.save()
        return redirect('page1')
    if form.is_valid() and button2:
        form.save()
        return redirect('page2')

最佳答案

你可以试试这个:

html

<form>
    <input type="submit" name="button1">
    <input type="submit" name="button2">
</form>

Views.py

if request.method == "POST":
    if form.is_valid() and 'button1' in request.POST:
        form.save()
        return redirect('page1')
    if form.is_valid() and 'button2' in request.POST:
        form.save()
        return redirect('page2')

关于django - Django View 中表单提交的不同重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62160026/

相关文章:

Django:如何判断 post_save 信号是否在新对象上触发?

django - 如何为 django-pagination 设置语言?

python - 如何使用数据库值在 django 中创建自定义表单

mysql - Django ORM查询字段权重?

python - 从表单输入中删除特定字母

django - 如何为 Django 建立 nginx 虚拟服务器 + fcgi?

python - Django:ValueError:太多值无法解压

python - Django 表单未以 HTML 呈现

python - Django-s3direct上传图片

django - 在 Django 中创建对象时增加整数