django-authentication相关内容

将 Django auth UserAdmin 用于自定义用户模型

来自 Django.Contrib.Auth 文档: 扩展 Django 的默认用户如果您对 Django 的 User 模型完全满意,并且只想添加一些额外的配置文件信息,您可以简单地将 django.contrib.auth.models.AbstractUser 子类化并添加您的自定义配置文件字段.此类提供了作为抽象模型的默认用户的完整实现. 说和做.我创建了一个如下所示的新模型: ..
发布时间:2021-12-02 19:41:33 其他开发

在每个页面上放置一个 django 登录表单

如果用户未登录,我希望登录表单(来自 django.contrib.auth 的 AuthenticationForm)出现在我网站的每个页面上.当用户登录时,他们将被重定向到同一页面.如果有错误,错误会和表单显示在同一个页面上. 我想您需要一个上下文处理器来为每个模板提供表单.但是,那么您还需要每个视图来处理发布的表单吗?这是否意味着您需要创建一些中间件?我有点失落. 有没有公认的方 ..
发布时间:2021-12-02 19:32:51 其他开发

如何检测来自不同位置的 Django Web 应用程序的多次登录?

对于我的 Django 应用程序中的个人登录,我希望一次只允许一个经过身份验证的会话.因此,如果用户通过给定的 IP 地址登录网页,并且使用相同的用户凭据从不同的 IP 地址登录,我想做一些事情(注销第一个用户或拒绝访问第二个用户.) 解决方案 不确定是否仍然需要,但我想我会分享我的解决方案: 1) 安装 django-tracking(谢谢你的提示,Van Gale Google ..
发布时间:2021-12-02 19:31:13 其他开发

在 Django 中,如何检查用户是否在某个组中?

我在 Django 的管理站点中创建了一个自定义组. 在我的代码中,我想检查一个用户是否在这个组中.我该怎么做? 解决方案 您可以简单地通过 User 上的 groups 属性访问组. from django.contrib.auth.models import User, Group组=组(名称=“编辑")group.save() # 为这个例子保存这个新组user = User ..
发布时间:2021-12-02 19:29:48 Python

django 的 auth_user.username 可以是 varchar(75) 吗?那怎么可能呢?

在auth_user 上运行alter table 以使username 成为varchar(75) 以便它适合电子邮件有什么问题吗?如果有的话,那会破坏什么? 如果您将 auth_user.username 更改为 varchar(75),您需要在哪里修改 django?是不是简单的把源码里的30改成75? username = models.CharField(_('username' ..
发布时间:2021-12-02 19:07:46 其他开发

Django:保存模型时填充用户 ID

我有一个带有 created_by 字段的模型,该字段链接到标准 Django 用户模型.保存模型时,我需要使用当前用户的 ID 自动填充它.我不能在 Admin 层执行此操作,因为该站点的大部分内容都不会使用内置的 Admin.任何人都可以就我应该如何处理这个问题提出建议吗? 解决方案 更新 2020-01-02 ⚠ 以下答案从未更新到最新的 Python 和 Django 版本. ..
发布时间:2021-12-02 19:04:20 其他开发

如何在基于 django 类的视图上使用 permission_required 装饰器

我在理解新的 CBV 的工作原理时遇到了一些麻烦.我的问题是,我需要在所有视图中都需要登录,在其中一些视图中需要登录特定的权限.在基于函数的视图中,我使用 @permission_required() 和视图中的 login_required 属性来执行此操作,但我不知道如何在新视图上执行此操作.django 文档中是否有部分解释了这一点?我什么也没找到.我的代码有什么问题? 我尝试使用@m ..
发布时间:2021-12-02 18:55:35 其他开发

让 Django 提供可下载的文件

我希望网站上的用户能够下载路径被遮挡的文件,因此无法直接下载. 例如,我希望 URL 是这样的:http://example.com/download/?f=somefile.txt 在服务器上,我知道所有可下载的文件都位于文件夹 /home/user/files/ 中. 有没有办法让 Django 提供该文件以供下载,而不是尝试查找 URL 并查看以显示它? 解决方案 ..
发布时间:2021-12-02 18:41:31 Python

在 Django 中使用自定义字段扩展用户模型

使用自定义字段扩展用户模型(与 Django 的身份验证应用程序捆绑在一起)的最佳方法是什么?我也可能想使用电子邮件作为用户名(用于身份验证). 我已经看过很少 方法 去做,但不能决定哪一个是最好的. 解决方案 最不痛苦且确实是 Django 推荐的方法是通过 OneToOneField(User) 属性. 扩展现有的用户模型 … 如果您希望存储与 User 相关的 ..
发布时间:2021-12-02 18:39:12 其他开发

在 Django 应用程序中,每个用户只允许一个活动会话

我想限制登录用户只能有一个活动会话,即如果用户使用新的 sessionid 登录,旧的会话应该终止.我已经在 SO 上找到了很多帮助:这里和这里 我实施了中间件解决方案,并进行了一些额外的检查... class OnlyOneUserMiddleware(object):"""确保登录用户只有一个会话处于活动状态的中间件.将踢出任何以前的会话."""def process_request( ..
发布时间:2021-11-11 22:01:50 其他开发

“外键"跨 Django 中非常独立的数据库

我正在编写一个使用两个不同数据库的 Django 站点.一个是本地数据库,我们称之为“Django",该数据库存储来自非常标准的安装的所有标准表——身份验证、站点、评论等——以及一些额外的表. 包括用户在内的大部分数据都来自另一台服务器上的数据库,我们称之为“传统"数据库. 我正在寻找有关连接两个数据库的干净、pythonic 方式的建议,特别是关于用户的建议. 我正在使用代理模 ..
发布时间:2021-06-22 20:32:36 其他开发

Django restframework,未提供身份验证凭据,knox-tokenauthentication

我从Traversy Media的youtube上学习了Redox和Django的教程.我遵循了该教程,现在我不知道它是否被限制了. curl http://localhost:8000/api/auth/login/-d \'{“用户名":“汤姆",“密码":"PassWord @ 321"}'\-H“内容类型:application/json" -X POST 这样做,我需要获取用户和 ..
发布时间:2021-05-02 18:30:58 其他开发

进行身份验证并授予用户一定的权限,具体取决于用户的类型.但是注意正在发生

进行身份验证并授予用户某些权限,具体取决于用户的类型.但是注意正在发生.我尝试根据用户类型来限制对网站上某些功能的访问.但是,当我设置条件时,页面上什么也没有发生:这是我的模型.py django.contrib.auth.models中的 导入AbstractUser从django.db导入模型从django.urls导入反向user_type_choice =(('1','majstor' ..
发布时间:2021-05-02 18:30:55 其他开发

django为什么同时具有authenticate方法和login方法?

我正在阅读身份验证教程,作者正在使用 authenticate()方法对登录表单中的凭据数据进行身份验证.结果被分配给像这样的用户变量 user = authenticate(用户名=用户名,密码=密码) 下一个:用户使用 login(请求,用户) 登录 但是为什么有2种不同的方法?认证凭证不是登录过程的一部分吗?那么,为什么该部分也不能由 login 函数处理呢?还是在某些情况下 ..
发布时间:2021-05-02 18:30:52 其他开发

将django的auth_user与现有用户表合并

当前,我有一个旧版应用程序,该应用程序引用具有所有自定义字段的 user 表.由于存在大量引用该表的遗留代码,因此我无法简单地将该表重命名为 auth_user .所以我想做的是以某种方式合并(我不知道它的正确术语) auth_user 和 user . 下面是 user 表: + ------------------- + -------------- + ------ +----- ..
发布时间:2021-05-02 18:30:47 其他开发

在我的Django应用程序上检查管理员登录名

我创建了一个django应用程序,并通过修改base.html链接到了管理索引页面.但是,该应用程序的链接也可以直接访问. 我是否可以在应用程序的页面或views.py中检查用户是否已登录django管理员? 解决方案 使用 @staff_member_required 装饰器: 从django.contrib.admin.views.decorators中的 导入staff_m ..
发布时间:2021-05-01 20:45:37 其他开发

修改django的用户名政策?

Django默认的管理员身份验证模块不允许在用户名中使用 \ char.我该如何接受它? 似乎可以编辑 contrib/auth/models.py 的用户名字段的验证器,但这不会这样做,因为它需要更改Django的基本代码. 解决方案 您可以使用自定义用户模型以实现这一目标.确保在模型定义中设置 USERNAME_FIELD 和 REQUIRED_FIELDS ,并在设置中设置 A ..
发布时间:2021-05-01 20:34:09 其他开发

扩展用户对象后,如何使Django登录API正常工作?

我已按照文档此处扩展我的用户类,但是现在我的登录测试失败.我假设这是由于扩展类未正确链接回处理auth的django视图. r = self.client.post('/login/',{'username':'test@test.com','password':'test'}) 返回 b'\ n \ n \ n ..
发布时间:2021-05-01 19:56:35 其他开发

需要Django权限

我正在尝试检查某些API请求的权限.我已经设置了auth用户以及auth_user_user_permissions和auth_permissions表,例如 view_company add_company bla bla,但问题不在于此.问题是当我尝试使用装饰器时 @permission_required("API.view_company",raise_exception = True) ..
发布时间:2021-05-01 19:49:45 其他开发

Django中User.objects.create_user()与User.objects.create()与User().save()之间的区别

在Django文档中,它使用 User.objects.create_user()创建用户.我很困惑,那与 User.objects.create()和 User().save()之间有什么区别,它们是创建其他对象的常规方法型号 解决方案 最重要的区别是,如果您向 .create()方法提供密码,则会在用户,并且将无法用于验证用户. >>>用户= User.objects.create( ..
发布时间:2021-05-01 19:39:34 其他开发