Mercurial > hg > savane-forge
changeset 338:514de37e0bcf
Cache field definitions
author | Sylvain Beucler <beuc@beuc.net> |
---|---|
date | Mon, 23 Aug 2010 07:15:10 +0200 |
parents | af82331e34ca |
children | 8710b49dd7cc |
files | savane/tracker/models.py |
diffstat | 1 files changed, 5 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/savane/tracker/models.py +++ b/savane/tracker/models.py @@ -510,6 +510,9 @@ values + group-specific overlay). Only apply sensible overlay values (cf. FieldOverlay model definition). """ + if hasattr(self, '_cache_field_defs'): + return self._cache_field_defs + fields = deepcopy(field_defs) for overlays in (FieldOverlay.objects.filter(tracker=self.tracker_id, group=None), FieldOverlay.objects.filter(tracker=self.tracker_id, group=self.group)): @@ -520,7 +523,8 @@ if fields[name]['display_type'] == 'SB': fields[name]['choices'] = field_get_values(self.tracker_id, self.group, fields[name], self.get_value(name)) - return fields + self._cache_field_defs = fields + return self._cache_field_defs def get_form_fields(self, user=None): """