diff options
Diffstat (limited to 'archaeological_context_records')
-rw-r--r-- | archaeological_context_records/migrations/0021_auto_20180509_1736.py (renamed from archaeological_context_records/migrations/0021_auto_20180423_1838.py) | 18 | ||||
-rw-r--r-- | archaeological_context_records/models.py | 16 |
2 files changed, 15 insertions, 19 deletions
diff --git a/archaeological_context_records/migrations/0021_auto_20180423_1838.py b/archaeological_context_records/migrations/0021_auto_20180509_1736.py index c26e46c07..d1267c67a 100644 --- a/archaeological_context_records/migrations/0021_auto_20180423_1838.py +++ b/archaeological_context_records/migrations/0021_auto_20180509_1736.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Generated by Django 1.11.10 on 2018-04-23 18:38 +# Generated by Django 1.11.10 on 2018-05-09 17:36 from __future__ import unicode_literals from django.db import migrations, models @@ -9,7 +9,7 @@ import django.db.models.deletion class Migration(migrations.Migration): dependencies = [ - ('ishtar_common', '0048_auto_20180423_1838'), + ('ishtar_common', '0050_licensetype_url'), ('archaeological_context_records', '0020_auto_20180430_1318'), ] @@ -19,7 +19,12 @@ class Migration(migrations.Migration): fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('is_main', models.BooleanField(default=False, verbose_name='Main image')), + ('image', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.IshtarImage')), ], + options={ + 'ordering': ('-is_main', 'image__name'), + 'abstract': False, + }, ), migrations.RemoveField( model_name='contextrecord', @@ -32,12 +37,7 @@ class Migration(migrations.Migration): ), migrations.AddField( model_name='contextrecordimage', - name='context_record', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_context_records.ContextRecord'), - ), - migrations.AddField( - model_name='contextrecordimage', - name='image', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.IshtarImage'), + name='item', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='associated_images', to='archaeological_context_records.ContextRecord'), ), ] diff --git a/archaeological_context_records/models.py b/archaeological_context_records/models.py index bdb21ea39..396b91f67 100644 --- a/archaeological_context_records/models.py +++ b/archaeological_context_records/models.py @@ -34,7 +34,7 @@ from ishtar_common.models import GeneralType, BaseHistorizedItem, \ HistoricalRecords, OwnPerms, ShortMenuItem, Source, GeneralRelationType,\ GeneralRecordRelations, post_delete_record_relation, get_image_path, \ ImageModel, post_save_cache, ValueGetter, BulkUpdatedItem, IshtarImage, \ - RelationItem + RelationItem, ThroughImage from archaeological_operations.models import Operation, Period, Parcel, \ ArchaeologicalSite @@ -485,11 +485,8 @@ class ContextRecord(BulkUpdatedItem, BaseHistorizedItem, return True def _get_base_image_path(self): - ope = self.operation - return u"operation/{}/{}/{}/{}".format( - ope.year, ope.reference, self.SLUG, - slugify(self.label or u"00") - ) + return self.operation._get_base_image_path() + \ + u"/{}/{}".format(self.SLUG, slugify(self.label or u"00")) @property def reference(self): @@ -565,10 +562,9 @@ class ContextRecord(BulkUpdatedItem, BaseHistorizedItem, post_save.connect(cached_label_changed, sender=ContextRecord) -class ContextRecordImage(models.Model): - image = models.ForeignKey(IshtarImage, on_delete=models.CASCADE) - context_record = models.ForeignKey(ContextRecord, on_delete=models.CASCADE) - is_main = models.BooleanField(_(u"Main image"), default=False) +class ContextRecordImage(ThroughImage): + item = models.ForeignKey(ContextRecord, on_delete=models.CASCADE, + related_name='associated_images') class RelationType(GeneralRelationType): |