Louis Mazin a2fda03471 first
2026-10-15 14:17:25 +02:00

30 lines
1.2 KiB
Python

"""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éé."))