diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2024-04-29 18:43:36 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2024-04-30 11:17:10 +0200 |
commit | 68190548376cd951d9e0466f385afd7ee94a5256 (patch) | |
tree | 0ae0f380fad9cc24b3380e11fc1948acf0000e71 /archaeological_finds/models_finds.py | |
parent | 8b2a8e8aff6f2143a9ae0eb266a6c34c19591b46 (diff) | |
download | Ishtar-68190548376cd951d9e0466f385afd7ee94a5256.tar.bz2 Ishtar-68190548376cd951d9e0466f385afd7ee94a5256.zip |
✨ templates: get containers values from the operation - performance: add cache (refs #5927)
Diffstat (limited to 'archaeological_finds/models_finds.py')
-rw-r--r-- | archaeological_finds/models_finds.py | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 7e153c6b5..6cb1499ca 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -670,11 +670,9 @@ class BaseFind( ) return dct - def get_values(self, prefix="", no_values=False, filtr=None, **kwargs): + def get_extra_values(self, prefix="", no_values=False, filtr=None, **kwargs): + values = {} no_find = kwargs.get("no_find", False) - values = super(BaseFind, self).get_values( - prefix=prefix, no_values=no_values, filtr=filtr, **kwargs - ) if not filtr or prefix + "complete_id" in filtr: values[prefix + "complete_id"] = self.complete_id() if no_find: @@ -917,9 +915,10 @@ class FindBasket(Basket, MainItem, ValueGetter): base_exclude.append(prefix + "items") kw = kwargs.copy() kw["exclude"] = base_exclude - values = super(FindBasket, self).get_values( - prefix=prefix, no_values=no_values, filtr=filtr, **kw - ) + return super().get_values(prefix=prefix, no_values=no_values, filtr=filtr, **kw) + + def get_extra_values(self, prefix="", no_values=False, filtr=None, **kwargs): + values = {} if not filtr or prefix + "items" in filtr: values[prefix + "items"] = [ item.get_values(no_values=True, filtr=filtr, **kwargs) @@ -2557,13 +2556,11 @@ class Find( recommendations.add(recommendation) return ", ".join(sorted(recommendations)) - def get_values(self, prefix="", no_values=False, filtr=None, **kwargs): + def get_extra_values(self, prefix="", no_values=False, filtr=None, **kwargs): + values = {} no_base_finds = False if "no_base_finds" in kwargs: no_base_finds = kwargs["no_base_finds"] - values = super(Find, self).get_values( - prefix=prefix, no_values=no_values, filtr=filtr, **kwargs - ) if not filtr or prefix + "material_types_label" in filtr: values[prefix + "material_types_label"] = self.get_material_types() if not filtr or prefix + "material_types_code" in filtr: |