from django.conf import settings from django.core.management.base import BaseCommand from member.models import Person, UserAccount from django.contrib.auth.hashers import make_password class Command(BaseCommand): help = "Füllt die DB mit Beispieldaten" def handle(self, *args, **kwargs): if not settings.DEBUG: raise CommandError( "❌ Dieses Kommando darf nur in DEBUG-Umgebungen verwendet werden.") # Bestehende Daten löschen self.stdout.write("🧹 Lösche bestehende Personen und Benutzerkonten...") UserAccount.objects.all().delete() Person.objects.all().delete() # Personen anlegen self.stdout.write("👤 Erstelle Personen...") p0 = Person.objects.create( vorname="Florian", nachname="von Lorch", geburtsdatum="0304-05-04", aktiv=True) p1 = Person.objects.create( vorname="Max", nachname="Mustermann", geburtsdatum="1980-05-01", aktiv=True) p2 = Person.objects.create( vorname="Erika", nachname="Beispiel", geburtsdatum="1992-03-15", aktiv=True) p3 = Person.objects.create( vorname="Thomas", nachname="Feuer", geburtsdatum=None, aktiv=True) p4 = Person.objects.create( vorname="Julia", nachname="Wehr", geburtsdatum="1999-11-20", aktiv=False) # Benutzerkonten anlegen self.stdout.write("🔐 Erstelle Benutzerkonten...") UserAccount.objects.create( person=p0, username="admin", password=make_password("adminpass1234"), role="superadmin", is_active=True, ) UserAccount.objects.create( person=p1, username="maxadmin", password=make_password("adminpass123"), role="admin", is_active=True, ) UserAccount.objects.create( person=p2, username="erikam", password=make_password("mitglied456"), role="mitglied", is_active=True, ) self.stdout.write(self.style.SUCCESS( "✅ Testdaten erfolgreich eingespielt."))