diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2023-01-19 20:47:06 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2023-01-19 20:47:06 +0100 |
commit | 931092752a4db520becea7815e0d1e205b0a921e (patch) | |
tree | f7f66957278e35bacd7298ed22fa5f383e1689b7 /archaeological_finds/models_finds.py | |
parent | f81bf9854a58827f36d5eb0a4303bad5fc64c558 (diff) | |
download | Ishtar-931092752a4db520becea7815e0d1e205b0a921e.tar.bz2 Ishtar-931092752a4db520becea7815e0d1e205b0a921e.zip |
Sheet find refactoring
Diffstat (limited to 'archaeological_finds/models_finds.py')
-rw-r--r-- | archaeological_finds/models_finds.py | 13 |
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 |