您可以定义一个post_migrate
信号来创建所需实例User
和Group
模型实例(如果尚不存在)。
当您使用中创建应用程序时python manage.py startapp <app_name>
,它将AppConfig
在apps.py文件中创建一个类。
您可以在AppConfig
类定义中指定要调用的信号。说信号被呼叫了populate_models
。在这种情况下,将AppConfig修改为如下所示:
from django.apps import AppConfig
from django.db.models.signals import post_migrate
class AppConfig(AppConfig):
name = 'app'
def ready(self):
from .signals import populate_models
post_migrate.connect(populate_models, sender=self)
并在signals.py中定义populate_models
函数。
def populate_models(sender, **kwargs):
from django.contrib.auth.models import User
from django.contrib.auth.models import group
# create groups
# assign permissions to groups
# create users