diff options
Diffstat (limited to 'archaeological_warehouse')
| -rw-r--r-- | archaeological_warehouse/models.py | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index add786012..268a0466a 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -1652,12 +1652,13 @@ class Container(          from_find = prefix.startswith("container_") or prefix.startswith(              "container_ref_"          ) +        base_exclude = [prefix + "container", prefix + "container_ref"]          if (              (not filtr or prefix + "finds" in filtr)              and not from_find              and "finds" not in kwargs.get("exclude", [])          ): -            kwargs["exclude"] = [prefix + "container", prefix + "container_ref"] +            kwargs["exclude"] = base_exclude[:]              # prevent recursive call              values[prefix + "finds"] = [                  f.get_values(prefix=prefix, no_values=True, filtr=None, **kwargs) @@ -1684,13 +1685,14 @@ class Container(              if bf:                  cr = bf.context_record                  if not filtr or cr_in_filter: -                    kwargs["exclude"] = [prefix + "operation"] +                    kwargs["exclude"] = base_exclude[:] + [prefix + "operation"] +                    kwargs["force_no_base_finds"] = True                      for k, v in cr.get_values(                          prefix=prefix, no_values=True, filtr=None, **kwargs                      ).items():                          values[prefix + "context_record_" + k] = v                  if not filtr or operation_in_filter: -                    kwargs["exclude"] = [prefix + "context_records"] +                    kwargs["exclude"] = base_exclude[:] + [prefix + "context_records"]                      for k, v in cr.operation.get_values(                          prefix=prefix, no_values=True, filtr=None, **kwargs                      ).items():  | 
