from django.db import models class SiteSettings(models.Model): site_name = models.CharField(max_length=200, default="Mon Super Site") site_logo = models.ImageField(upload_to='settings/', blank=True) contact_email = models.EmailField(blank=True) # Réseaux sociaux facebook_url = models.URLField(blank=True) twitter_url = models.URLField(blank=True) youtube_url = models.URLField(blank=True) instagram_url = models.URLField(blank=True) linkedin_url = models.URLField(blank=True) github_url = models.URLField(blank=True) # Blog blog_title = models.CharField(max_length=200, default="Blog du développeur") blog_description = models.TextField(blank=True, default="Je documente la construction de PartirDeZero.com : mes choix techniques, mes bugs résolus et mes conseils pour lancer tes propres projets web. Apprends en regardant faire.") # L'astuce pour qu'il n'y ait qu'un seul réglage def save(self, *args, **kwargs): self.pk = 1 # On force l'ID à 1. Si tu sauvegardes, ça écrase l'existant. super(SiteSettings, self).save(*args, **kwargs) def delete(self, *args, **kwargs): pass # On empêche la suppression. On ne peut pas supprimer les réglages. def __str__(self): return "Configuration Générale" class Meta: verbose_name = "Réglages du site" verbose_name_plural = "Réglages du site"