diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2026-01-29 15:16:04 +0100 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2026-01-29 15:16:52 +0100 |
| commit | 2162ba022d68645552d2b4509118c60351bc547c (patch) | |
| tree | 6ff7ed9934ecda91319a5c48c82816a654325e95 | |
| parent | 8054350559c2bdc22e9f1c6a393c875e11522cac (diff) | |
| download | Ishtar-2162ba022d68645552d2b4509118c60351bc547c.tar.bz2 Ishtar-2162ba022d68645552d2b4509118c60351bc547c.zip | |
✨ GIS API: manage name for import creation
| -rw-r--r-- | ishtar_common/models_imports.py | 8 | ||||
| -rw-r--r-- | ishtar_common/views_api.py | 5 |
2 files changed, 8 insertions, 5 deletions
diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py index b456bfd59..ea5729ed7 100644 --- a/ishtar_common/models_imports.py +++ b/ishtar_common/models_imports.py @@ -1569,7 +1569,7 @@ class ImportChunk(models.Model): chunks.append(q.all()[0]) return chunks - def create_import(self, chunks): + def create_import(self, chunks, name): contents = [] for chunk in chunks: try: @@ -1587,18 +1587,18 @@ class ImportChunk(models.Model): return Import.objects.create( importer_type=self.importer, user=self.user, - name=str(_("Import from QGIS")), + name=name, import_immediatly=self.import_immediatly, imported_file=ContentFile( tf.read(), name=f"import-{self.send_datetime.strftime('%Y-%m-%d-%H%M')}.csv") ) - def associate_chunks(self): + def associate_chunks(self, name=""): chunks = self.is_complete() if not chunks: return - new_import = self.create_import(chunks) + new_import = self.create_import(chunks, name) # delete all chunks - import creation has succeded or data is corrupted for chunk in chunks: chunk.delete() diff --git a/ishtar_common/views_api.py b/ishtar_common/views_api.py index dc4b38280..cf8cd425d 100644 --- a/ishtar_common/views_api.py +++ b/ishtar_common/views_api.py @@ -162,13 +162,16 @@ class GISImportAPI(GISBaseImportView, GISAPIView): data = {} for k in request.data: data[k] = request.data.get(k) + import_name = str(_("Import from QGIS")) + if "import_name" in data: + import_name = data.pop("import_name") data["importer"] = importer.pk data["user"] = request.user.ishtaruser.pk data["chunk"] = html.unescape(data["chunk"]) serializer = ImportChunkSerializer(data=data) if serializer.is_valid(): chunk = serializer.save() - new_import = chunk.associate_chunks() + new_import = chunk.associate_chunks(name=import_name) msg = "" if new_import and new_import.import_immediatly: permissions = new_import.get_permissions_for_actions(request.user) |
