使用Django重定向和HttpResponseRedirect有什么区别? [英] What the difference between using Django redirect and HttpResponseRedirect?

查看:469
本文介绍了使用Django重定向和HttpResponseRedirect有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

一般使用哪一种更好?

https://docs.djangoproject。 com / en / dev / ref / request-response /#django.http.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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆