summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ishtar_common/utils_migrations.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/ishtar_common/utils_migrations.py b/ishtar_common/utils_migrations.py
index edbeb5567..431fe5bd7 100644
--- a/ishtar_common/utils_migrations.py
+++ b/ishtar_common/utils_migrations.py
@@ -2,9 +2,11 @@
from __future__ import unicode_literals
import datetime
+import json
+import os
from django.core.files import File
-import os
+from django.db import connection
def migrate_simple_image_to_m2m(base_model, image_model, rel_model,
@@ -124,7 +126,6 @@ def m2m_historization_init(obj):
continue
values.append(value.history_compress())
hist_values[attr] = values
- obj.history_m2m = hist_values
for hist in obj.history.all():
hist.history_m2m = hist_values
d = hist.history_date
@@ -134,5 +135,11 @@ def m2m_historization_init(obj):
hist.history_date = date
hist.last_modified = date
hist.save()
- obj.skip_history_when_saving = True
- obj.save()
+ with connection.cursor() as cursor:
+ # not clean... but json fields seems to be not well managed by
+ # cursor.execute
+ cursor.execute(
+ u"UPDATE \"" + obj.__class__._meta.db_table + u"\" SET "
+ u"history_m2m = '" + json.dumps(hist_values).replace(u"'", u"''") +
+ u"'::json WHERE id = %s", [obj.pk]
+ )