我正要使用django-guardian,直到我在官方文档中遇到以下内容:

https://docs.djangoproject.com/en/stable/topics/auth/customizing/#handling-authorization-in-custom-backends

权限不仅可以按对象类型设置,还可以按特定对象实例设置.通过使用ModelAdmin类提供的has_add_permission()、has_change_permission()和has_delete_permission()方法,可以自定义同一类型的不同对象实例的权限.

这是否意味着新版本的django不再需要django guardian?

请澄清一下.

推荐答案

事实上,在阅读文档时,我很兴奋Django将满足"按对象权限判断"的需求,especially in the admin,理解如何激活它只是个时间问题.

然而,this does not seem to always be the case.

Django undoubtedly strives为这样的实现提供了依据(API),但是这种实现有时需要良好的编码技能和对Django的理解.

开发人员将在creating the app之前将这些工具整合到一起,以满足其需求.这可能很简单,也可能...没那么容易!

这些相互矛盾的信息形成了我的网络爬行的基础,我的网络爬行的重点是找到"每个对象的权限"问题的解决方案,不知何故……有效地满足了我的项目需求或规模,当然还有我自己的编码技能和到目前为止对Django的理解.

对于这一目的,Django-guardian似乎是最健壮、最成熟、最成熟的应用程序,而且它在管理集成方面也有3 years old open issue.

还有另外more lightweight django applications家解决了生产稳定的特定需求.

虽然我试图在这个有点棘手的任务中维持收支平衡,但我倾向于使用django-rules,因为它简单而专注于我的需求功能.

Django相关问答推荐

构造一个定制字符串(实体、年份和字母数字的组合)作为Django中的Postgres数据库的主键是否明智?

如何在Django模板中获取组中对象的整体计数器(&Q;)?

DjangoRestFramework 解析错误:"多部分表单解析错误多部分中的无效边界:None"

Django Inline Tabular admin:删除一个不工作的对象

有什么方法可以自动设置 Debug True Django application

来自 Django 应用程序的日志(log)消息未上传到 AWS CloudWatch

AttributeError:'Manager'对象在Django中没有属性'get_by_natural_key'错误?

如何在 django tests.py 中创建管理员用户

Django JSONField 过滤

如何在 forms.Form 子类上动态设置 models.ModelChoiceField 的查询集

将网络测功机添加到 Heroku django 应用程序时如何克服Coudn't find that formation错误?

测试 Django ModelForm 是否有实例

通过 django shell 保存图像/文件

PyMongo vs MongoEngine for Django

在 django admin 中创建对象时如何自动插入当前用户?

在 Django 管理页面中注册应用程序中的每个表/类

如何动态检索 Django 模型类?

Django JavaScript 文件

AUTH_USER_MODEL 指的是尚未安装和创建的模型 .. AbstractUser 模型无法登录

如何在 Django 中更改上传文件的文件名?