summaryrefslogtreecommitdiff
path: root/ishtar_common/data_importer.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/data_importer.py')
-rw-r--r--ishtar_common/data_importer.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/ishtar_common/data_importer.py b/ishtar_common/data_importer.py
index 9d470a084..9329fbfac 100644
--- a/ishtar_common/data_importer.py
+++ b/ishtar_common/data_importer.py
@@ -945,6 +945,8 @@ class Importer(object):
item = cls.objects.get(pk=pk)
except cls.DoesNotExist:
continue
+ if cls != self.OBJECT_CLS:
+ cls._no_down_model_update = True
item._timestamp = self.timestamp
item._queue = "low_priority"
item.save()
@@ -1186,6 +1188,8 @@ class Importer(object):
def _create_item(self, cls, dct, idx_line):
obj = cls(**dct)
obj._no_post_save = True # delayed at the end of the import
+ if hasattr(obj, "no_post_process"):
+ obj.no_post_process(history=True)
obj._queue = "low_priority"
obj.save()
self._add_to_post_save(cls, obj.pk, idx_line)
@@ -1329,6 +1333,9 @@ class Importer(object):
else:
self.number_updated += 1
+ if hasattr(obj, "no_post_process"):
+ obj.no_post_process(history=True)
+
if not created and "defaults" in data:
for k in data["defaults"]:
setattr(obj, k, data["defaults"][k])
@@ -1375,6 +1382,8 @@ class Importer(object):
setattr(item, k, geodata[k])
item._timestamp = self.timestamp
item._queue = "low_priority"
+ if hasattr(item, "no_post_process"):
+ item.no_post_process(history=True)
item.save()
else:
item = GeoVectorData.objects.create(**geodata)
@@ -1393,6 +1402,8 @@ class Importer(object):
obj._no_move = True
obj.skip_history_when_saving = True
obj._queue = "low_priority"
+ if hasattr(obj, "no_post_process"):
+ obj.no_post_process(history=True)
obj.save()
n = datetime.datetime.now()
@@ -1466,6 +1477,8 @@ class Importer(object):
t_obj._no_post_save = True
t_obj._timestamp = self.timestamp
t_obj._queue = "low_priority"
+ if hasattr(t_obj, "no_post_process"):
+ t_obj.no_post_process(history=True)
t_obj.save()
self._add_to_post_save(t_obj.__class__, t_obj.pk, idx_line)
if self.import_instance and hasattr(t_obj, "imports") and created:
@@ -1808,6 +1821,8 @@ class Importer(object):
if changed:
v._timestamp = self.timestamp
v._queue = "low_priority"
+ if hasattr(v, "no_post_process"):
+ v.no_post_process(history=True)
v.save()
for att, objs in m2m_m2ms:
if type(objs) not in (list, tuple):
@@ -2157,6 +2172,8 @@ class Importer(object):
setattr(obj, k, updated_dct[k])
obj._timestamp = self.timestamp
obj._queue = "low_priority"
+ if hasattr(obj, "no_post_process"):
+ obj.no_post_process(history=True)
obj.save()
if (
not self.simulate
@@ -2227,6 +2244,8 @@ class Importer(object):
try:
v._timestamp = self.timestamp
v._queue = "low_priority"
+ if hasattr(v, "no_post_process"):
+ v.no_post_process(history=True)
v.save()
except DatabaseError as import_error:
msg = str(import_error)