diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-12-20 19:49:52 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-01-11 17:30:46 +0100 |
commit | 330215cf864ad3a917d51d6be15d68f360c166dc (patch) | |
tree | 3ae604ef9a36c7edaac48530db753810324e5494 /ishtar_common/utils_migrations.py | |
parent | 35ba8c95c9e359be0346dd163a47dd4874dd0ecb (diff) | |
download | Ishtar-330215cf864ad3a917d51d6be15d68f360c166dc.tar.bz2 Ishtar-330215cf864ad3a917d51d6be15d68f360c166dc.zip |
Manage main image: model, auto associate default image
Diffstat (limited to 'ishtar_common/utils_migrations.py')
-rw-r--r-- | ishtar_common/utils_migrations.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/ishtar_common/utils_migrations.py b/ishtar_common/utils_migrations.py index 40cdcb5cd..d161c1f29 100644 --- a/ishtar_common/utils_migrations.py +++ b/ishtar_common/utils_migrations.py @@ -97,3 +97,18 @@ def reinit_last_modified(apps, app_name, models): item.skip_history_when_saving = True item.save() + +def migrate_main_image(apps, app_name, model_name): + model = apps.get_model(app_name, model_name) + for item in model.objects.filter( + documents__image__isnull=False).exclude( + main_image__isnull=False).all(): + q = item.documents.filter( + image__isnull=False).exclude(image='') + if not q.count(): + return + # by default get the lowest pk + item.main_image = q.order_by('pk').all()[0] + item.skip_history_when_saving = True + item.save() + |