简体   繁体   English

带参数的Django RedirectView

[英]Django RedirectView that takes an argument

Need a view that takes an idea from the context and returns redirect url. 需要一个从上下文中获取想法并返回重定向URL的视图。

This code works fine: 这段代码可以正常工作:

class FooView(RedirectView):
    def get(self, request, id, *args, **kwargs):
        ...
        return HttpResponseRedirect(reverse('foo_space:foo', urlconf='bar.system.urls'))
  • In this case is there any reason to use RecirectView at all (while not View)? 在这种情况下,是否有任何理由要全部使用RecirectView(而不是View)?
  • May be there is more appripriate way to do it? 可能有更合适的方法吗? Eg using get_redirect_url? 例如使用get_redirect_url?

Definitely worthwhile. 绝对值得。 Check out what RedirectView does. 查看RedirectView功能。 For one, it redirects all methods by default PUT , POST , HEAD etc. while View would throw a 405 for everything but get 首先,它默认重定向PUTPOSTHEAD等所有方法,而View会为所有方法抛出405 ,但get

And definitely override get_redirect_url to take advantage of the above. 并绝对重写get_redirect_url以利用上述优势。

It could be simpler via setting the pattern_name attribute only, but it looks like you need the urlconf kwarg as well so this method may not work. 仅通过设置pattern_name属性可能会更简单,但是看起来您也需要urlconf kwarg,因此此方法可能不起作用。

https://docs.djangoproject.com/en/1.7/ref/class-based-views/base/#django.views.generic.base.RedirectView.pattern_name https://docs.djangoproject.com/en/1.7/ref/class-based-views/base/#django.views.generic.base.RedirectView.pattern_name

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM