Rešeno: django, kako ustvariti superuporabnika, če ob selitvi ne obstaja

Če superuporabnik pri selitvi ne obstaja, ga bo Django ustvaril.

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>

Prva vrstica ustvari funkcijo, ki bo ustvarila superuporabnika, če ta še ne obstaja.
Druga vrstica pridobi uporabniški model iz aplikacije 'auth'.
Tretja vrstica preveri, ali obstaja uporabnik z uporabniškim imenom 'admin'. Če ne,
četrta vrstica ustvari superuporabnika z uporabniškim imenom 'admin', e-poštnim naslovom 'admin@example.com' in geslom 'password'.
Peta in šesta vrstica ustvarita migracijski razred in določata, da je odvisen od migracije '0001_initial' v aplikaciji 'myapp'.
Sedma vrstica določa, da mora selitev izvajati funkcijo 'create_superuser'.

Kaj je superuporabnik

Superuporabnik je uporabnik s skrbniškimi pravicami na spletnem mestu Django. Počnejo lahko stvari, kot so ustvarjanje in upravljanje modelov, pogledov in aplikacij.

Podobni objav:

Pustite komentar