Rezolvat: django cum se creează un superutilizator dacă nu există la migrare

Dacă un superutilizator nu există la migrare, Django va crea unul.

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>

Prima linie creează o funcție care va crea un superutilizator dacă nu există deja unul.
A doua linie primește modelul User din aplicația „auth”.
A treia linie verifică dacă există un utilizator cu numele de utilizator „admin”. Dacă nu,
a patra linie creează un superutilizator cu numele de utilizator „admin”, adresa de e-mail „admin@example.com” și parola „parolă”.
A cincea și a șasea rânduri creează o clasă de migrare și specifică că aceasta depinde de migrarea „0001_initial” din aplicația „myapp”.
A șaptea linie specifică că migrarea ar trebui să ruleze funcția „create_superuser”.

Ce este un superutilizator

Un superutilizator este un utilizator cu privilegii administrative pe un site Django. Ei pot face lucruri precum să creeze și să gestioneze modele, vizualizări și aplicații.

Postări asemănatoare:

Lăsați un comentariu