אם משתמש-על לא קיים בהעברה, Django תיצור אחד.
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>
השורה הראשונה יוצרת פונקציה שתיצור משתמש-על אם לא קיים כבר.
השורה השנייה מקבלת את מודל המשתמש מאפליקציית 'auth'.
השורה השלישית בודקת אם קיים משתמש עם שם המשתמש 'אדמין'. אם לא,
השורה הרביעית יוצרת משתמש-על עם שם המשתמש 'admin', כתובת הדוא"ל 'admin@example.com' והסיסמה 'סיסמה'.
השורה החמישית והשישית יוצרות מחלקת הגירה ומציינת שהיא תלויה בהעברה '0001_initial' באפליקציה 'myapp'.
השורה השביעית מציינת שההעברה צריכה להפעיל את הפונקציה 'create_superuser'.
מהו Superuser
משתמש-על הוא משתמש בעל הרשאות ניהול באתר Django. הם יכולים לעשות דברים כמו ליצור ולנהל מודלים, תצוגות ויישומים.