Django - 创建 "hard-coded" 组和权限
Django - Create "hard-coded" groups and permissions
我需要定义一些在模型和视图中使用的权限和组。我知道如何使用权限来做到这一点(在某些模型的 "Meta" 中定义它们),但我不清楚如何使用组来做到这一点。也许正确的做法不是使用 Django 的 Auth 中提供的组,而是创建一些新模型来处理这些 "constant" 组。
我也尝试将这些组创建为 "initial data" (https://docs.djangoproject.com/en/1.7/howto/initial-data/),但这个解决方案对我来说似乎不是很干净。
无法在代码中创建硬编码组(不修改 Django 源代码),因为组存储在 auth.group table 数据库中。让您的小组加入此 table 的可能方法是:
- 初始数据,正如您已经完成的那样(推荐,因为它是为此而设计的)
- 创建包含组的数据迁移
在有点讨厌的代码中添加它
从django.contrib.auth.models导入组
p, 创建 = Group.objects.get_or_create(名称 = 'Administrators')
我需要定义一些在模型和视图中使用的权限和组。我知道如何使用权限来做到这一点(在某些模型的 "Meta" 中定义它们),但我不清楚如何使用组来做到这一点。也许正确的做法不是使用 Django 的 Auth 中提供的组,而是创建一些新模型来处理这些 "constant" 组。
我也尝试将这些组创建为 "initial data" (https://docs.djangoproject.com/en/1.7/howto/initial-data/),但这个解决方案对我来说似乎不是很干净。
无法在代码中创建硬编码组(不修改 Django 源代码),因为组存储在 auth.group table 数据库中。让您的小组加入此 table 的可能方法是:
- 初始数据,正如您已经完成的那样(推荐,因为它是为此而设计的)
- 创建包含组的数据迁移
在有点讨厌的代码中添加它
从django.contrib.auth.models导入组
p, 创建 = Group.objects.get_or_create(名称 = 'Administrators')