summaryrefslogtreecommitdiff
path: root/archaeological_context_records
diff options
context:
space:
mode:
authorQuentinAndre <quentin.andre@imt-atlantique.net>2021-07-16 10:25:23 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2021-09-01 12:36:46 +0200
commitc18865b0d1e0103abcd7db77ec99abe39dbdbcd4 (patch)
tree9b029504bdf0ecf5922c164cea40e5c2c41e92f7 /archaeological_context_records
parent57cb006e6fcafc67dd4a8423cb3d273bdd14a18b (diff)
downloadIshtar-c18865b0d1e0103abcd7db77ec99abe39dbdbcd4.tar.bz2
Ishtar-c18865b0d1e0103abcd7db77ec99abe39dbdbcd4.zip
format GeoJSON and getting properly related objects
Diffstat (limited to 'archaeological_context_records')
-rw-r--r--archaeological_context_records/models.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/archaeological_context_records/models.py b/archaeological_context_records/models.py
index 01eb6e27b..50952d3a9 100644
--- a/archaeological_context_records/models.py
+++ b/archaeological_context_records/models.py
@@ -860,17 +860,18 @@ class ContextRecord(
def get_geo_items(self, get_polygons, rounded=True):
dict = super(ContextRecord, self).get_geo_items(get_polygons, rounded)
- associated_geo_items = {"associated base finds": {}}
BaseFind = apps.get_model("archaeological_finds", "BaseFind")
- for find_label in self._get_associated_cached_labels():
+ collection_base_finds = []
+ for bf in self.base_finds.distinct().all():
try:
- bf = BaseFind.objects.get(label=find_label)
- associated_geo_items["associated base finds"][
- str(find_label)
- ] = bf.get_geo_items(get_polygons, rounded)
+ geo_item = bf.get_geo_items(get_polygons, rounded)
+ collection_base_finds.append(geo_item)
except BaseFind.DoesNotExist:
pass
- dict["properties"] = associated_geo_items
+ dict["properties"]["base-finds"] = {
+ "type": "FeatureCollection",
+ "features": collection_base_finds,
+ }
return dict
@classmethod