summaryrefslogtreecommitdiff
path: root/archaeological_context_records
diff options
context:
space:
mode:
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.py16
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):