Python 在Django admin中,如何以编程方式创建具有模型权限的组?
我想创建两个组“驱动程序”和“管理员”。 每个组都应具有模型的遵从权限 “管理员”“能够添加、删除和查看某些型号 “驱动程序”“只需添加和查看某些型号即可Python 在Django admin中,如何以编程方式创建具有模型权限的组?,python,django,python-3.x,django-models,django-admin,Python,Django,Python 3.x,Django Models,Django Admin,我想创建两个组“驱动程序”和“管理员”。 每个组都应具有模型的遵从权限 “管理员”“能够添加、删除和查看某些型号 “驱动程序”“只需添加和查看某些型号即可 实现这一点的最佳方法是什么?这取决于项目中导致创建这些组的操作。我可以猜测,在部署项目时,您希望创建这些组一次,而无需进入管理面板并手动创建组。如果是这样,我建议您尝试RunPythonit迁移: 此外,您还需要使用model组: 迁移的一个简单示例如下所示: from django.db import migrations def fo
实现这一点的最佳方法是什么?这取决于项目中导致创建这些组的操作。我可以猜测,在部署项目时,您希望创建这些组一次,而无需进入管理面板并手动创建组。如果是这样,我建议您尝试
RunPython
it迁移:
此外,您还需要使用model组
:
迁移的一个简单示例如下所示:
from django.db import migrations
def forwards_func(apps, schema_editor):
Group = apps.get_model("django.contrib.auth", "Group")
# Create the groups you need here...
def reverse_func(apps, schema_editor):
Group = apps.get_model("django.contrib.auth", "Group")
# Delete the groups you need here...
class Migration(migrations.Migration):
dependencies = []
operations = [
migrations.RunPython(forwards_func, reverse_func),
]
可以通过以下命令创建新的空迁移:
python manage.py makemigrations myapp --empty