4 Ce module fournit un modèle abstrait en vue d'harmoniser les metadata des modèles
5 utilisés dans les applications.
7 Il s'occupe aussi de l'assignation automatique de ces metadatas à travers l'admin.
8 Si les objets sont modifiés à travers un frontend, ces metadatas devront être codées
9 manuellement dans les vues.
11 Ce module fournit notemment une metadata 'supprime', qui permet de simuler une suppression
12 aux yeux des utilisateurs. Toute la mécanique des de queryset pour lister et supprimer les
13 objets est liée à ce modèle abstrait et n'est plus à coder dans votre application.
20 class AyantDroit(AUFMetadata):
21 """Personne en relation avec un Employe.
23 nom = models.CharField(max_length=255)
24 prenom = models.CharField(max_length=255, verbose_name="Prénom",)
25 employe = models.ForeignKey('Employe', db_column='employe', verbose_name="Employé")
30 # -*- encoding: utf-8 -*-
32 from django.contrib import admin
33 from auf.django.metadata.admin import AUFMetadataAdminMixin
35 class AyantDroitAdmin(AUFMetadataAdminMixin, admin.ModelAdmin):
37 L'ajout d'un nouvel ayantdroit se fait dans l'admin de l'employé.
40 # Dans ce cas on ajoute d'autres champs "readonly" autrement cette déclaration
42 readonly_fields = AUFMetadataAdminMixin.readonly_fields + ('employe',)
44 # Ajoute un premier fieldeset contenant les metadata ordonnées.
45 fieldsets = AUFMetadataAdminMixin.fieldsets + (
46 ("Lien avec l'employé", {
47 'fields': ('employe', )
51 'fields': ('nom', 'prenom', )