如何在Django视图中创建引用URL

时间:2014-10-15 22:58:21

标签: django django-views

我在类视图中有以下代码:

    if event.has_user_edit_credentials(user):
        return redirect(reverse_lazy('edit_event_artists', args=(event.pk,)))
    else:
        return redirect([XXXXXXX])

如何重定向到[XXXXX]字段中的引荐网址?

2 个答案:

答案 0 :(得分:2)

您需要使用请求对象的META dictionary

return redirect(self.request.META.get('HTTP_REFERER', '/'))

由于可能未设置HTTP_REFERER,因此会将其重定向到根/,您可以将其更改为您想要的默认重定向目标。

答案 1 :(得分:0)

如果您使用的是基于类的视图,我相信答案在于dispatchdocs here)方法。你的问题没有太多细节,所以我恐怕无法在答复中提出更详细的答案。

如果您在装饰器中使用它,或许可以说是自定义login_required类型的一部分,HttpResponseRedirect会更合适。如果您在基于功能的视图中使用它,情况也是如此。