"""Crée le superutilisateur lors du premier démarrage, sans le modifier ensuite.""" from decouple import config from django.contrib.auth import get_user_model from django.core.management.base import BaseCommand class Command(BaseCommand): help = "Crée le compte administrateur initial depuis le .env." def handle(self, *args, **options): username = config("ADMIN_USERNAME", default="").strip() password = config("ADMIN_PASSWORD", default="") if not username or not password: self.stdout.write(self.style.WARNING("ADMIN_USERNAME ou ADMIN_PASSWORD absent : création ignorée.")) return user_model = get_user_model() if user_model.objects.filter(username=username).exists(): self.stdout.write("Compte administrateur déjà présent : mot de passe inchangé.") return user_model.objects.create_superuser( username=username, email="", password=password, first_name=config("ADMIN_FIRST_NAME", default=""), last_name=config("ADMIN_LAST_NAME", default=""), ) self.stdout.write(self.style.SUCCESS("Administrateur initial créé."))