问题标签 [django-guardian]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
19724 浏览

python - django.db.utils.OperationalError:没有这样的表:auth_user

安装 Django-userena 后,我的 django 版本出现错误:1.9.5 我只是一步一步安装 django-userena,但是当我迁移它时,发生了一个错误,我不知道如何解决它。

应用:

0 投票
1 回答
4131 浏览

permissions - django-guardian 和 django-rest-framework

我想在一个安静的项目中使用 django-guardian 管理我的对象权限(使用 django-rest-framework)。

我想要什么:

  • 仅当他具有“add_modelname”权限时,才允许连接的用户创建对象。
  • 连接用户创建对象时,设置“delete_modelname”和“change_modelname”权限。
  • 仅当连接的用户具有“change_modelobject”权限时,才允许连接的用户编辑对象。
  • 仅当连接的用户具有“delete_modelobject”权限时才允许他删除对象。

我正在尝试使用以下代码管理这些案例:

视图.py

权限.py

我遇到的第一个问题是我在这一行有一个错误:

错误 :

而且我认为其余代码将不起作用,但至少您可以看到我想要做什么。

我还没有看到任何关于这些具体案例的例子。

编辑:另一件事是这段代码:

总是返回真。但是我从来没有给我的用户设置这个权限(只用管理员用户试过,也许这就是原因)。

0 投票
1 回答
123 浏览

django - 如何控制视图类查询集中的项目?

在上面的代码片段中,我试图只查询给定用户应该看到的项目。我试过 queryset = get_objects_for_user(request.user, 'model.view_model')了,但这没有用,并导致未定义错误“请求”。在谷歌搜索并尝试了我现在所拥有的之后,我得到了未定义的错误“自我”。我还尝试在其他权限之上实现 django-guardian。

0 投票
1 回答
1050 浏览

python - 使用 django-rest-framework 设置对象级权限

尝试使用 django-rest-framework 以最干净和规范的方式管理 django-guardian 对象级权限。

我想在执行 POST 时将对象的读取权限(module.view_object)分配给发出请求的用户。

我基于班级的观点:

django-rest-framework 文档中所述,我已经重载perform_create以将用户传递给序列化程序。

但是如何在序列化程序中分配权限(使用 Guardian.shortcuts.assign_perm)。save除了重写手动分配权限的方法之外,没有其他方法吗?难道没有某种标准机制来管理像这样的常见行为吗?

0 投票
2 回答
2181 浏览

django-rest-framework - 如何自定义 DjangoObjectPermissions?

嗨,我正在关注这个使用 DjangoObjectPermissionsFilter 的示例。

我想创建class SampleModelPermissions(permissions.DjangoObjectPermissions)它以满足我的“自我记录”DRF API 中的以下描述:

在此处输入图像描述

这是我的代码:

在models.py中:

在views.py中:

在权限.py

但我在邮递员中得到以下信息:

在此处输入图像描述

在此处输入图像描述

关于我应该做些什么来让我的 API 权限按照我在自我文档中描述的那样工作的任何提示?

0 投票
1 回答
1264 浏览

django-admin - Django-Guardian Permissions - 为一对多关系中的对象设置权限

我有以下型号:

项目:

搜索代码:

Django-Guardian 文档中,我可以在 Django 管理员中设置权限。然后对于一个项目,我可以在如下视图中检查/限制用户:

现在这是我卡住的地方。如何在 Django-Admin 中设置与项目相关的任何 SearchCode 的权限?我不想在 SearchCodes 上设置对象级权限——这只是 SearchCode 的每个实例。相反,我需要能够在管理员中设置:

您可以查看与此项目相关的每个 SearchCode,但不能查看任何其他 SearchCode。

如果我需要更具体,请告诉我 - 我已尝试使其尽可能通用。

谢谢 - 任何帮助或指示将不胜感激。

编辑:

我使用Admin-Integration示例在 Django-Guardian 中设置项目对象级权限。

感觉在这一点上,当我在此项目的对象权限页面中时,必须有某种方法来设置与此特定项目实例相关的所有 SearchCode 的权限。

0 投票
1 回答
488 浏览

django - ViewFlow 和 django-guardian

我想利用django-guardian的对象权限并将特定用户的特定权限授予一个或多个 Django 用户。

我试图向我的 Process 类添加一些权限,如下所示:

不幸的是,这会导致viewflow在启动后立即抛出错误runserver

我最初的计划是对类进行子类化StartView流化,以改变从 .Permission继承的函数的PermissionMixin工作方式。但这似乎也比这更多的工作。

django-guardian已在此处cookbook的某个部分中提到,但目前导致 404 页面。

在进程和任务上使用监护人权限的推荐/最干净的方法是什么?

0 投票
0 回答
593 浏览

django - Django Guardian 的自定义组模型

Django 监护人需要from django.contrib.auth.models import Group为组分配行级权限。我有自己的组模型,它不是Group. 对此我能做些什么吗?

0 投票
2 回答
290 浏览

django - 在 django 中仅显示模型更改列表中的一些对象

我正在为多所大学创建一个 Django 应用程序。这是我使用的模型类。

我为每个学院创建了一个员工用户,但申请人的更改列表也显示了不属于同一学院的申请人。我想修改管理页面更改列表,以便仅列出属于该特定机构的申请人。目前我的申请人页面更改列表对于我必须从中删除一些申请人的每个机构来说都是这样的。

当前更改列表

当前更改列表

0 投票
1 回答
1251 浏览

python - Django:手动设置is_active = True,不行吗?

由于许多细节会使这篇文章变得太长,我正在使用自定义用户模型,以及 django-registration 和 Guardian。

一切都很好,但我正在努力让每个注册的用户都自动设置为活动状态,所以“他们”(现在只有我在模拟用户)可以立即登录。到目前为止,我所做的方法是在 SQL 表中将该字段手动设置为“1”(真)。

似乎无论我如何安排事情,is_active标志总是False直到我在 SQL 中手动更改它,即使我将它打印到我的控制台并且在我注册时它显示 True。

确实user.save()通过更改为 来让它工作user.save(commit=True),这确实会生成is_active标志True并允许用户登录,但它总是会抛出一个错误,上面写着:

类型错误:save() 得到了一个意外的关键字参数“提交”

当然,这都是为了测试目的,我确实打算引入电子邮件验证,但我对为什么我不能简单地设置标志和save().

这是我的register/forms.py

我的register/models.py