0

我有一个具有装饰器的视图,该装饰器重定向到管理员登录页面,如下所示

@login_required(login_url='/admin')

这意味着每当用户尝试访问 /admin/some/url/ 时,他都会被要求通过 /admin/?next=/admin/some/url/ 的管理页面登录

我的问题是:用户通过管理页面登录后如何处理重定向?

/admin/?next=/admin/some/url/ -> /admin/some/url/

我假设我需要调整我的应用程序的 urlpatterns 并使用redirect_to from

django.views.generic.simple

并覆盖

(r'^admin/', 包括(admin.site.urls))

PS:为了简化这个问题:我需要一个正则表达式来匹配 /admin/some/url/ 中的 /admin/?next=/admin/some/url/ 所以我可以将它用于我的 redirect_to 函数

4

1 回答 1

0

我建议不要使用管理员的东西来管理用户身份验证。

请参阅有关 Authentication Views 的 Django 文档,这真的很简单,并且自动使用next参数做正确的事情。

当你九年前问这个问题时,这可能还不存在:-)

于 2021-02-12T21:31:33.983 回答