首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Django中的单独管理/用户身份验证系统

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

Stack Overflow用户
提问于 2009-09-29 19:41:26
回答 3查看 3.7K关注 0票数 8

我最近开始学习/使用django;我正在设法为管理员和用户创建两个独立的身份验证系统。与其创建一个全新的auth系统,我想利用django的内置功能(即会话管理、@login_required装饰器等)。

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

有人对我如何实现我的目标有什么建议,或者知道有什么文章/例子可以帮助我前进吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-09-29 20:46:42

如果我正确理解了您的问题(也许我不理解),我想您是在问如何为非管理员用户创建单独的登录表单,同时仍然使用标准的Django身份验证机制、User模型等。

你想从django.contrib.auth.views.login开始。在urlconf中添加一行如下所示:

代码语言:javascript
运行
复制
(r'^/login/$', 'django.contrib.auth.views.login', {'template_name': 'myapp/login.html'})

login泛型视图接受template_name参数,这是自定义登录模板的路径(您也可以使用django.contrib.auth提供的通用模板)。

有关loginlogoutpassword_change和其他泛型视图的完整文档可在Django身份验证文档中获得。

票数 1
EN

Stack Overflow用户

发布于 2009-09-29 20:33:29

您可能会编写一个或多个自定义身份验证后端。这是记录在案的这里。例如,我编写了一个定制后端,用于对LDAP服务器进行身份验证。

票数 1
EN

Stack Overflow用户

发布于 2009-09-29 19:53:29

稍微修改一下,使用户在用户名上有一个类别前缀?您还没有给我们多少关于您想要做的事情的信息,您的需求可能通过使用站点框架来满足,或者只是使用两个单独的django安装。

如果您要做的是将用户登录页和管理登录页面分开,只需使用文档中详细说明的内置框架来创建“用户”登录页面,而不使用admin登录页面。如果你担心用户会以某种方式开始编辑管理登录的东西,不要,他们不会,除非你让他们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1494524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档