summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2019-09-04 14:51:54 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2019-09-04 14:51:54 +0200
commit6f487e1b480365ff4a64500dc40ff2da6d92d5b2 (patch)
treece53c3f49edd931596dacbdd85da510a1f326576 /ishtar_common
parentc83b3c1e68cb478f9a2c7ba226c56cfdb793fc2c (diff)
downloadIshtar-6f487e1b480365ff4a64500dc40ff2da6d92d5b2.tar.bz2
Ishtar-6f487e1b480365ff4a64500dc40ff2da6d92d5b2.zip
Use UUID for operations and datings
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/utils_migrations.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/ishtar_common/utils_migrations.py b/ishtar_common/utils_migrations.py
index 62b6720c6..bbe308f4e 100644
--- a/ishtar_common/utils_migrations.py
+++ b/ishtar_common/utils_migrations.py
@@ -5,6 +5,7 @@ import datetime
import json
import os
import sys
+import uuid
from django.core.files import File
from django.db import connection
@@ -154,3 +155,17 @@ def m2m_historization_init(obj):
u"history_m2m = '" + json.dumps(hist_values).replace(u"'", u"''") +
u"'::json WHERE id = %s", [obj.pk]
)
+
+
+def migrate_uuid(model):
+ for obj in model.objects.all():
+ obj.uuid = uuid.uuid4()
+ obj.skip_history_when_saving = True
+ obj.save()
+
+
+def set_uuid_helper(module, model_name):
+ def set_uuid(apps, schema_editor):
+ model = apps.get_model(module, model_name)
+ migrate_uuid(model)
+ return set_uuid