diff options
author | QuentinAndre <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 |
commit | c18865b0d1e0103abcd7db77ec99abe39dbdbcd4 (patch) | |
tree | 9b029504bdf0ecf5922c164cea40e5c2c41e92f7 /archaeological_context_records | |
parent | 57cb006e6fcafc67dd4a8423cb3d273bdd14a18b (diff) | |
download | Ishtar-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.py | 15 |
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 |