我正在Django中创建一个自定义管理页面。我不想重新发明轮子,因此想要使用Django管理员登录表格让员工登录并将其重定向到/ my-url /之后。
但是,在/ admin /成功登录后,我找不到将用户重定向到自定义网址的方法。
答案 0 :(得分:5)
我有同样的问题。
我没有在登录后重定向 ,而是使用了@staff_member_required装饰器
我的视图/my-url/
重定向到管理员登录
from django.contrib.admin.views.decorators import staff_member_required
@staff_member_required
def test_list(request):
return HttpResponse('TEST')
如果使用基于类的视图,请查看method_decorator
答案 1 :(得分:2)
Django auth应用程序附带login view,您可以连接到/accounts/login/
或您选择的任何其他网址。如果您不想自己编写,可以使用管理员的登录模板admin/login.html
。
通过使用登录视图,LOGIN_REDIRECT_URL
参数将起作用。 /admin/
页面的目的是显示管理员索引。我会避免尝试将其用作登录页面。
答案 2 :(得分:1)
在LOGIN_REDIRECT_URL
文件中设置settings.py
。记录here。
答案 3 :(得分:0)
由于我偶然发现了同一问题,因此我注意到默认登录页面的网址:
/admin/login/?next=/admin/
所以我将登录页面链接更改为
/admin/login/?next=/
指向主页
也很适合注销页面