summaryrefslogtreecommitdiff
path: root/archaeological_finds/models_finds.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_finds/models_finds.py')
-rw-r--r--archaeological_finds/models_finds.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index 11c611eea..05321be50 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -2230,6 +2230,19 @@ class Find(
materials.add(material)
return ", ".join(sorted(materials))
+ def get_hierarchical_material_types(self) -> str:
+ """
+ Return comma separated string of material types with full hierarchy
+ """
+ labels = []
+ for material in self.material_types.all():
+ mat = [material.label]
+ while material.parent:
+ mat.append(material.parent.label)
+ material = material.parent
+ labels.append(" > ".join([m for m in reversed(mat)]))
+ return " ; ".join(sorted(labels))
+
def get_material_types_recommendations(self) -> str:
"""
Return comma separated string of recommendations from material