django网站重复进出

旧巷老猫 提交于 2020-01-26 08:54:29

今天使用django写代码的时候遇到了一个问题,大概写一个更新功能,再views.py中先写一个update函数,用来跳转到更新的页面,函数如下:

def update(request):
    textid = request.GET.get("textid")
    temp = pertext.objects.get(textid=textid)
    ret = {"content": temp.content}
    request.session['updateid'] = textid
    return render(request, "update.html", ret)

然后在更新页面更新完后进行更新并且跳转到首页,更新的函数为updatediscuss函数,函数如下:

def updatediscuss(request):
    textid = request.session['updateid']
    temp = pertext.objects.get(textid=textid)
    temp.content = request.POST.get("content")
    temp.save()
    return HttpResponseRedirect('/blog')

然而在逻辑上没有错的时候,点击更新却出现了错误:

其中pertext是我的数据库中的一个表,在查询的过程中,我发现是因为重复两次进入了update这个函数,而第二次进入函数的时候并没有传参,print debug法:

可是明明是使用form进行传参,而且指向的位置也没有出错,为什么它会错呢?

最后我在寻找的过程中,无意中发现了问题所在,在我的urls.py文件中的函数摆放位置如下:

在将update函数的位置与updatediscuss函数的位置交换后就可以正常运行了。

我思考了以下会不会是因为先找到了update函数就执行update函数了呢?因为url的第一个参数是正则表达式,所以我尝试了一下将写法变一下:

运行成功。

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!