如何在 Django Guardian 中为用户定义默认权限?

Posted

技术标签:

【中文标题】如何在 Django Guardian 中为用户定义默认权限?【英文标题】:How do I define default permissions for users in Django Guardian? 【发布时间】:2012-09-07 06:35:10 【问题描述】:

当我在 Django 中创建用户时,他没有权限:

In [7]: u = User.objects.create(username='aoeu')
In [12]: u.user_permissions.all()
Out[12]: []

我希望默认设置一些权限(例如,'api.add_item'),我使用Django Guardian。这是否可以以声明的方式进行,例如。不写 post_save 信号?

【问题讨论】:

【参考方案1】:

不,这是不可能的。 检查 django.contrib.auth 代码以确保

【讨论】:

从models.py、User、Permission和UserManager开始。据我所知,在创建新用户时没有设置预定义权限的特殊钩子。

以上是关于如何在 Django Guardian 中为用户定义默认权限?的主要内容,如果未能解决你的问题,请参考以下文章

管理员中的 Django Guardian TemplateSyntaxError

使用 Django 和 django-guardian 对象权限的每个对象的组

如何在 django ajax-selects 中为 django 用户模型声明一个 LOOKUP CHANNEL

如何在 Django 中为每个用户附加不同的数据库?

如何在 Django 中为特定用户和特定项目使用 deleteview?

如何在 Django 中为用户模型加载 sql 夹具?