list_display contrat #1542
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Mon, 11 Jul 2011 18:40:54 +0000 (14:40 -0400)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Mon, 11 Jul 2011 18:40:54 +0000 (14:40 -0400)
project/rh/lib.py
project/rh/models.py

index fc351c8..eba434f 100644 (file)
@@ -150,7 +150,12 @@ class CommentaireAdmin(admin.ModelAdmin):
 
 
 class ContratAdmin(admin.ModelAdmin):
 
 
 class ContratAdmin(admin.ModelAdmin):
-    pass
+    search_fields = ('dossier__employe__nom', 'dossier__employe__prenom', )
+    list_display = ('id', 'dossier', '_poste', )
+
+    def _poste(self, obj):
+        return obj.dossier.poste
+    _poste.short_description = "Poste"
 
 
 class DeviseAdmin(admin.ModelAdmin):
 
 
 class DeviseAdmin(admin.ModelAdmin):
index a410f9b..e5bcfd4 100644 (file)
@@ -594,12 +594,20 @@ class Remuneration(Remuneration_):
 
 
 ### CONTRATS
 
 
 ### CONTRATS
+
+class ContratManager(NoDeleteManager):
+    def get_query_set(self):
+        return super(ContratManager, self).get_query_set().select_related('dossier', 'dossier__poste')
+
         
 class Contrat(AUFMetadata):
     """Document juridique qui encadre la relation de travail d'un Employe
     pour un Poste particulier. Pour un Dossier (qui documente cette 
     relation de travail) plusieurs contrats peuvent être associés.
     """
         
 class Contrat(AUFMetadata):
     """Document juridique qui encadre la relation de travail d'un Employe
     pour un Poste particulier. Pour un Dossier (qui documente cette 
     relation de travail) plusieurs contrats peuvent être associés.
     """
+
+    objects = ContratManager()
+
     dossier = models.ForeignKey('Dossier', db_column='dossier', 
                             related_name='+')
     type_contrat = models.ForeignKey('TypeContrat', db_column='type_contrat', 
     dossier = models.ForeignKey('Dossier', db_column='dossier', 
                             related_name='+')
     type_contrat = models.ForeignKey('TypeContrat', db_column='type_contrat',