gpt4 book ai didi

python - Django 中单独的管理员/用户身份验证系统

转载 作者:太空狗 更新时间:2023-10-29 21:57:37 32 4
gpt4 key购买 nike

我最近开始学习/使用 django;我试图找出一种方法来为管理员和用户提供两个独立的身份验证系统。我不想创建一个全新的身份验证系统,而是想利用 django 的内置功能(即 session 管理、@login_required 装饰器等)。

具体来说,我想要两个单独的登录表 - 一个用于管理员,一个用于用户。 admin 登录表应该是 django 使用其默认字段(即 id、username、email、is_staff 等)生成的默认表。另一方面,用户表我希望只有 5 个字段 - id、email、password、first_name、last_name。此外,我想对登录表和 @login_required 装饰器分别使用 django 内置 session 管理和各自的 View 。最后,我想为管理员和用户提供两个独立且不同的登录表单。

有人对我如何实现我的目标有任何建议或知道任何可以帮助我的文章/示例吗?

最佳答案

如果我正确理解了你的问题(也许我没有理解),我想你是在问如何为非管理员用户创建一个单独的登录表单,同时仍然使用标准的 Django 身份验证机制,User 模型等。这由 Django 通过 django.contrib.auth.views 中的 View 原生支持。

您想从 django.contrib.auth.views.login 开始。像这样在您的 urlconf 中添加一行:

(r'^/login/$', 'django.contrib.auth.views.login', {'template_name': 'myapp/login.html'})

login 通用 View 接受 template_name 参数,这是您自定义登录模板的路径(您也可以使用一个通用的模板,由 django.contrib.auth).

有关loginlogoutpassword_change 和其他通用 View 的完整文档可在Django Authentication Docs 中找到。 .

关于python - Django 中单独的管理员/用户身份验证系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1494524/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com