【问题标题】:How to redirect to another view/page if the form is invalid如果表单无效,如何重定向到另一个视图/页面
【发布时间】:2021-03-10 14:57:26
【问题描述】:

如果表单无效,如何将用户重定向到另一个页面?

def dothings(request):
    
    form = dumyForm(request.POST or None)
    
    if form.is_valid():    
        #do 123    
    else:   
      # INSTEAD OF REINITIALIZING THE FORM LIKE THIS, I WANT TO REDIRECT TO ANOTHER PAGE
      form = form = dumyForm()
    
   return render(request,'dummy.html',{})

【问题讨论】:

    标签: django django-models django-views django-forms django-templates


    【解决方案1】:

    尝试使用这个:

    def dothings(request):
    
        if request.method == 'POST':
            form = dumyForm(request.POST or None)
    
            if form.is_valid():    
                **other_code**
                return redirect('redirect_page_view')
    
            else:
                return redirect('redirect_page_view')
        else:   
            form = dumyForm()
    
     context = {'form':form}
     return render(request,'dummy.html',context)
    

    【讨论】:

    • 如果表单无效,我想重定向
    • 更新了我的答案
    【解决方案2】:

    如果您希望将用户重定向到另一个页面,您可以使用以下行:return HttpResponseRedirect('page/'),其中“page”是您的另一个页面的 URL。

    【讨论】:

    • 这一行:return render(request,'dummy.html',{}) 将无法访问
    猜你喜欢
    • 2015-12-12
    • 1970-01-01
    • 2015-11-10
    • 1970-01-01
    • 2016-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多