from django.contrib import admin from .models import SiteSettings @admin.register(SiteSettings) class SiteSettingsAdmin(admin.ModelAdmin): # On empêche d'ajouter une nouvelle config s'il en existe déjà une def has_add_permission(self, request): return not SiteSettings.objects.exists() # On empêche de supprimer la config (trop dangereux) def has_delete_permission(self, request, obj=None): return False # Petite astuce visuelle pour l'admin fieldsets = ( ('Général', { 'fields': ('site_name', 'site_logo') }), ('Réseaux Sociaux', { 'fields': ('facebook_url', 'twitter_url', 'youtube_url'), 'classes': ('collapse',) # Cache cette section par défaut pour alléger }), ('Contact', { 'fields': ('contact_email',) }), ('Blog', { 'fields': ('blog_title', 'blog_description') }), )