summaryrefslogtreecommitdiff
path: root/archaeological_finds/models_finds.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2023-11-29 23:02:27 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2023-11-29 23:02:27 +0100
commitfa7832607eaa350e9f9154059b57d185dc12f441 (patch)
treea8285c8de1993332c81af944c7f43c328a7c20ad /archaeological_finds/models_finds.py
parent154203d71dd9065bb8ffbd3a680f6fc7755c67b2 (diff)
downloadIshtar-fa7832607eaa350e9f9154059b57d185dc12f441.tar.bz2
Ishtar-fa7832607eaa350e9f9154059b57d185dc12f441.zip
✨ New accessor for find template
Diffstat (limited to 'archaeological_finds/models_finds.py')
-rw-r--r--archaeological_finds/models_finds.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index 455570523..f702c97ea 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -2169,13 +2169,14 @@ class Find(
if no_base_finds:
return values
# by default attach first basefind data
- if not filtr or prefix + "base_finds" not in filtr:
- bf = self.get_first_base_find()
- if not bf:
- return values
- v = bf.get_values(prefix=prefix, no_values=True, filtr=filtr, **kwargs)
- v.update(values)
- values = v
+ bf = self.get_first_base_find()
+ if not bf:
+ return values
+ alt_filtr = [k[len("base_find_"):] for k in filtr if k.startswith("base_find_")]
+ v = bf.get_values(prefix=prefix, no_values=True, filtr=alt_filtr, **kwargs)
+ v = dict([('base_find_' + k, v) for k, v in v.items()])
+ v.update(values)
+ values = v
kwargs["no_find"] = True
values[prefix + "base_finds"] = [
base_find.get_values(no_values=True, filtr=filtr, **kwargs)