projets
/
auf_django_references.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[#2562] Filtrage automatique des actifs sur Region et Etablissement
[auf_django_references.git]
/
auf
/
django
/
references
/
managedref
/
models.py
diff --git
a/auf/django/references/managedref/models.py
b/auf/django/references/managedref/models.py
index
3ce88a5
..
16178cc
100644
(file)
--- a/
auf/django/references/managedref/models.py
+++ b/
auf/django/references/managedref/models.py
@@
-3,6
+3,12
@@
from django.db import models
from django.db import models
+class ActifsManager(models.Manager):
+
+ def get_query_set(self):
+ return super(ActifsManager, self).get_query_set().filter(actif=True)
+
+
class Employe(models.Model):
"""Personne en contrat d'employé (CDD ou CDI) à l'AUF
"""
class Employe(models.Model):
"""Personne en contrat d'employé (CDD ou CDI) à l'AUF
"""
@@
-423,6
+429,10
@@
class Region(models.Model):
# meta
actif = models.BooleanField()
# meta
actif = models.BooleanField()
+ # managers
+ objects = ActifsManager()
+ avec_inactifs = models.Manager()
+
class Meta:
db_table = u'ref_region'
ordering = ['nom']
class Meta:
db_table = u'ref_region'
ordering = ['nom']
@@
-581,8
+591,14
@@
class Pays(models.Model):
class EtablissementManager(models.Manager):
class EtablissementManager(models.Manager):
+ def __init__(self, avec_inactifs=False):
+ super(EtablissementManager, self).__init__()
+ self.avec_inactifs=avec_inactifs
+
def get_query_set(self):
qs = super(EtablissementManager, self).get_query_set()
def get_query_set(self):
qs = super(EtablissementManager, self).get_query_set()
+ if not self.avec_inactifs:
+ qs = qs.filter(actif=True)
return qs.select_related('pays')
return qs.select_related('pays')
@@
-652,6
+668,7
@@
class EtablissementBase(models.Model):
# Manager
objects = EtablissementManager()
# Manager
objects = EtablissementManager()
+ avec_inactifs = EtablissementManager(avec_inactifs=True)
class Meta:
abstract = True
class Meta:
abstract = True