使用Django重定向和HttpResponseRedirect有什么区别? [英] What the difference between using Django redirect and HttpResponseRedirect?
问题描述
一般使用哪一种更好?
是写任何优点:
return redirect(my_url)
:
return HttpResponseRedirect(my_url)
还是直接别名?有什么区别吗哪个更多的是pythonic / django-nic?
Or is it a direct alias? Is there any difference? Which is more pythonic/django-nic?
推荐答案
两者之间有区别:
在 HttpResponseRedirect
的情况下,第一个参数只能是一个 url
。
In the case of HttpResponseRedirect
the first argument can only be a url
.
redirect
最终将 返回一个 HttpResponseRedirect
可以接受
模型
,视图
或 url
因为它是到的参数。所以它可以重定向更灵活一些。
redirect
which will ultimately return a HttpResponseRedirect
can accept a model
, view
, or url
as it's "to" argument. So it is a little more flexible in what it can "redirect" to.
我也喜欢 redirect
更短。所以我会使用 redirect
over HttpResponseRedirect
。
I also like how redirect
is shorter. So I'd use redirect
over HttpResponseRedirect
.
两者都可以使用。
这篇关于使用Django重定向和HttpResponseRedirect有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!