You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django表单提交后redirect重定向失效 停留在原页面问题排查

Django重定向失效问题解决方案

问题位置

问题出在views.py的createProject视图函数中,你调用了redirect('projects')但没有将其作为返回值返回。

原因说明

Django视图函数要求必须返回一个响应对象,redirect()函数本身只会生成重定向类型的响应实例,如果你没有用return关键字把这个实例返回给上层,代码会继续向下执行,最终函数返回的还是末尾的render(request, 'projects/project_form.html', context)响应,所以页面不会触发跳转,始终停留在表单提交页,不过此时表单数据实际已经正常写入数据库。

修复方案

将createProject函数中redirect('projects')这行修改为return redirect('projects')即可,修正后的完整函数代码如下:

def createProject(request):
    form = ProjectForm()

    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('projects') # 新增return关键字

    context = {'form':form}
    return render(request, 'projects/project_form.html', context)

内容的提问来源于stack exchange,提问作者Kapil Sharma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 12:54:03