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 /archaeological_context_records | |
| parent | 35ba8c95c9e359be0346dd163a47dd4874dd0ecb (diff) | |
| download | Ishtar-330215cf864ad3a917d51d6be15d68f360c166dc.tar.bz2 Ishtar-330215cf864ad3a917d51d6be15d68f360c166dc.zip | |
Manage main image: model, auto associate default image
Diffstat (limited to 'archaeological_context_records')
3 files changed, 56 insertions, 2 deletions
diff --git a/archaeological_context_records/migrations/0034_auto_20181220_1539.py b/archaeological_context_records/migrations/0034_auto_20181220_1539.py new file mode 100644 index 000000000..9574a5d6e --- /dev/null +++ b/archaeological_context_records/migrations/0034_auto_20181220_1539.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.10 on 2018-12-20 15:39 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0079_migrate-importers'), + ('archaeological_context_records', '0033_auto_20181203_1442'), + ] + + operations = [ + migrations.AddField( + model_name='contextrecord', + name='main_image', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='main_image_context_records', to='ishtar_common.Document', verbose_name='Main image'), + ), + migrations.AddField( + model_name='historicalcontextrecord', + name='main_image', + field=models.ForeignKey(blank=True, db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='+', to='ishtar_common.Document'), + ), + ] diff --git a/archaeological_context_records/migrations/0035_migrate_main_image.py b/archaeological_context_records/migrations/0035_migrate_main_image.py new file mode 100644 index 000000000..ba1adb074 --- /dev/null +++ b/archaeological_context_records/migrations/0035_migrate_main_image.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.10 on 2018-12-20 19:12 +from __future__ import unicode_literals + +from django.db import migrations + +from ishtar_common.utils_migrations import migrate_main_image + + +def migrate_main_image_script(apps, schema): + migrate_main_image(apps, 'archaeological_context_records', 'ContextRecord') + + +class Migration(migrations.Migration): + + dependencies = [ + ('archaeological_context_records', '0034_auto_20181220_1539'), + ] + + operations = [ + migrations.RunPython(migrate_main_image_script) + ] diff --git a/archaeological_context_records/models.py b/archaeological_context_records/models.py index d7d7a618d..82527acb1 100644 --- a/archaeological_context_records/models.py +++ b/archaeological_context_records/models.py @@ -24,7 +24,7 @@ from django.contrib.gis.db import models from django.core.urlresolvers import reverse from django.db import connection, transaction from django.db.models import Q -from django.db.models.signals import post_delete, post_save +from django.db.models.signals import post_delete, post_save, m2m_changed from django.utils.translation import ugettext_lazy as _, pgettext, \ activate, pgettext_lazy, deactivate from django.utils.text import slugify @@ -35,7 +35,7 @@ from ishtar_common.models import Document, GeneralType, \ BaseHistorizedItem, HistoricalRecords, OwnPerms, ShortMenuItem, \ GeneralRelationType, GeneralRecordRelations, post_delete_record_relation,\ post_save_cache, ValueGetter, BulkUpdatedItem, ExternalIdManager, \ - RelationItem, Town, get_current_profile + RelationItem, Town, get_current_profile, document_attached_changed from archaeological_operations.models import Operation, Period, Parcel, \ ArchaeologicalSite @@ -429,6 +429,9 @@ class ContextRecord(BulkUpdatedItem, BaseHistorizedItem, documents = models.ManyToManyField( Document, related_name='context_records', verbose_name=_(u"Documents"), blank=True) + main_image = models.ForeignKey( + Document, related_name='main_image_context_records', + verbose_name=_(u"Main image"), blank=True, null=True) cached_label = models.TextField(_(u"Cached name"), null=True, blank=True, db_index=True) @@ -681,6 +684,8 @@ class ContextRecord(BulkUpdatedItem, BaseHistorizedItem, post_save.connect(cached_label_changed, sender=ContextRecord) +m2m_changed.connect(document_attached_changed, + sender=ContextRecord.documents.through) class RelationType(GeneralRelationType): |
