Solucionat: django com crear un superusuari si no existeix a la migració

Si no existeix un superusuari a la migració, Django en crearà un.

I have a migration that creates a superuser if it does not exist. 
<code>def create_superuser(apps, schema_editor):
    User = apps.get_model('auth', 'User')

    if not User.objects.filter(username='admin').exists():
        User.objects.create_superuser('admin', 'admin@example.com', 'password')


class Migration(migrations.Migration):

    dependencies = [
        ('myapp', '0001_initial'),
    ]

    operations = [
        migrations.RunPython(create_superuser),
    ] 
</code>

La primera línia crea una funció que crearà un superusuari si encara no existeix.
La segona línia obté el model d'usuari de l'aplicació "auth".
La tercera línia comprova si existeix un usuari amb el nom d'usuari "admin". Sinó,
la quarta línia crea un superusuari amb el nom d'usuari "admin", l'adreça de correu electrònic "admin@example.com" i la contrasenya "contrasenya".
La cinquena i la sisena línies creen una classe de migració i especifiquen que depèn de la migració '0001_initial' a l'aplicació 'myapp'.
La setena línia especifica que la migració hauria d'executar la funció 'create_superuser'.

Què és un superusuari

Un superusuari és un usuari amb privilegis administratius en un lloc de Django. Poden fer coses com crear i gestionar models, vistes i aplicacions.

Articles Relacionats:

Deixa el teu comentari