summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/migrations/0101_squashed.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2020-01-27 18:21:55 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2020-07-01 18:01:59 +0200
commit49e64486eb885cf1e57edf921ac54dd6a09bf744 (patch)
treeac58e393f88bd034eb8108905a7a43cc6c5498f6 /archaeological_warehouse/migrations/0101_squashed.py
parentf1c39260f07f87532ab194899b27e289e5cb558a (diff)
downloadIshtar-49e64486eb885cf1e57edf921ac54dd6a09bf744.tar.bz2
Ishtar-49e64486eb885cf1e57edf921ac54dd6a09bf744.zip
Pseudo-squash of migrations - use Makefile script for migrations
Diffstat (limited to 'archaeological_warehouse/migrations/0101_squashed.py')
-rw-r--r--archaeological_warehouse/migrations/0101_squashed.py374
1 files changed, 374 insertions, 0 deletions
diff --git a/archaeological_warehouse/migrations/0101_squashed.py b/archaeological_warehouse/migrations/0101_squashed.py
new file mode 100644
index 000000000..fb4745c10
--- /dev/null
+++ b/archaeological_warehouse/migrations/0101_squashed.py
@@ -0,0 +1,374 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.27 on 2020-01-23 18:21
+from __future__ import unicode_literals
+
+import datetime
+from django.conf import settings
+import django.contrib.gis.db.models.fields
+import django.contrib.postgres.fields.jsonb
+import django.contrib.postgres.indexes
+import django.contrib.postgres.search
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+import ishtar_common.models
+import re
+import uuid
+
+
+class Migration(migrations.Migration):
+ dependencies = [
+ migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ('ishtar_common', '0201_squashed'),
+ ("archaeological_warehouse", "0044_auto_20191216_1050")
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Collection',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('data', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default={})),
+ ('search_vector', django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto filled at save', null=True, verbose_name='Search vector')),
+ ('last_modified', models.DateTimeField(auto_now=True)),
+ ('history_m2m', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default={})),
+ ('need_update', models.BooleanField(default=False, verbose_name='Need update')),
+ ('locked', models.BooleanField(default=False, verbose_name='Item locked for edition')),
+ ('history_date', models.DateTimeField(default=datetime.datetime.now)),
+ ('name', models.CharField(blank=True, max_length=200, null=True, verbose_name='Name')),
+ ('description', models.TextField(blank=True, null=True, verbose_name='Description')),
+ ('history_creator', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Creator')),
+ ('history_modifier', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Last editor')),
+ ('imports', models.ManyToManyField(blank=True, related_name='imported_archaeological_warehouse_collection', to='ishtar_common.Import')),
+ ('lock_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Locked by')),
+ ],
+ options={
+ 'verbose_name': 'Collection',
+ 'verbose_name_plural': 'Collection',
+ 'ordering': ('name',),
+ },
+ bases=(ishtar_common.models.StatisticItem, ishtar_common.models.TemplateItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models.FixAssociated, ishtar_common.models.CascasdeUpdate),
+ ),
+ migrations.CreateModel(
+ name='Container',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('data', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default={})),
+ ('search_vector', django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto filled at save', null=True, verbose_name='Search vector')),
+ ('qrcode', models.ImageField(blank=True, max_length=255, null=True, upload_to=ishtar_common.models.get_image_path)),
+ ('x', models.FloatField(blank=True, null=True, verbose_name='X')),
+ ('y', models.FloatField(blank=True, null=True, verbose_name='Y')),
+ ('z', models.FloatField(blank=True, null=True, verbose_name='Z')),
+ ('estimated_error_x', models.FloatField(blank=True, null=True, verbose_name='Estimated error for X')),
+ ('estimated_error_y', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Y')),
+ ('estimated_error_z', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Z')),
+ ('point', django.contrib.gis.db.models.fields.PointField(blank=True, dim=3, null=True, srid=4326, verbose_name='Point')),
+ ('point_2d', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=4326, verbose_name='Point (2D)')),
+ ('point_source', models.CharField(blank=True, choices=[('T', 'Town'), ('P', 'Precise'), ('M', 'Polygon')], max_length=1, null=True, verbose_name='Point source')),
+ ('point_source_item', models.CharField(blank=True, max_length=100, null=True, verbose_name='Point source item')),
+ ('multi_polygon', django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Multi polygon')),
+ ('multi_polygon_source', models.CharField(blank=True, choices=[('T', 'Town'), ('P', 'Precise'), ('M', 'Polygon')], max_length=1, null=True, verbose_name='Multi-polygon source')),
+ ('multi_polygon_source_item', models.CharField(blank=True, max_length=100, null=True, verbose_name='Multi polygon source item')),
+ ('last_modified', models.DateTimeField(auto_now=True)),
+ ('history_m2m', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default={})),
+ ('need_update', models.BooleanField(default=False, verbose_name='Need update')),
+ ('locked', models.BooleanField(default=False, verbose_name='Item locked for edition')),
+ ('history_date', models.DateTimeField(default=datetime.datetime.now)),
+ ('uuid', models.UUIDField(default=uuid.uuid4)),
+ ('reference', models.TextField(verbose_name='Container ref.')),
+ ('comment', models.TextField(blank=True, null=True, verbose_name='Comment')),
+ ('cached_label', models.TextField(blank=True, db_index=True, null=True, verbose_name='Localisation')),
+ ('cached_location', models.TextField(blank=True, db_index=True, null=True, verbose_name='Cached location')),
+ ('cached_division', models.TextField(blank=True, db_index=True, null=True, verbose_name='Cached division')),
+ ('index', models.IntegerField(default=0, verbose_name='Container ID')),
+ ('old_reference', models.TextField(blank=True, null=True, verbose_name='Old reference')),
+ ('external_id', models.TextField(blank=True, null=True, verbose_name='External ID')),
+ ('auto_external_id', models.BooleanField(default=False, verbose_name='External ID is set automatically')),
+ ],
+ options={
+ 'verbose_name': 'Container',
+ 'verbose_name_plural': 'Containers',
+ 'ordering': ('cached_label',),
+ 'permissions': (('view_container', 'Can view all Containers'), ('view_own_container', 'Can view own Container'), ('add_own_container', 'Can add own Container'), ('change_own_container', 'Can change own Container'), ('delete_own_container', 'Can delete own Container')),
+ },
+ bases=(ishtar_common.models.DocumentItem, ishtar_common.models.StatisticItem, ishtar_common.models.TemplateItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models.FixAssociated, ishtar_common.models.CascasdeUpdate, ishtar_common.models.ImageContainerModel, ishtar_common.models.OwnPerms, ishtar_common.models.MainItem),
+ ),
+ migrations.CreateModel(
+ name='ContainerLocalisation',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('reference', models.CharField(default='', max_length=200, verbose_name='Reference')),
+ ('container', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='division', to='archaeological_warehouse.Container', verbose_name='Container')),
+ ],
+ options={
+ 'verbose_name': 'Container localisation',
+ 'verbose_name_plural': 'Container localisations',
+ 'ordering': ('container', 'division__order'),
+ },
+ ),
+ migrations.CreateModel(
+ name='ContainerType',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('label', models.TextField(verbose_name='Label')),
+ ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z', 32), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')),
+ ('comment', models.TextField(blank=True, null=True, verbose_name='Comment')),
+ ('available', models.BooleanField(default=True, verbose_name='Available')),
+ ('length', models.IntegerField(blank=True, null=True, verbose_name='Length (mm)')),
+ ('width', models.IntegerField(blank=True, null=True, verbose_name='Width (mm)')),
+ ('height', models.IntegerField(blank=True, null=True, verbose_name='Height (mm)')),
+ ('volume', models.FloatField(blank=True, null=True, verbose_name='Volume (l)')),
+ ('reference', models.CharField(blank=True, max_length=300, null=True, verbose_name='Ref.')),
+ ],
+ options={
+ 'verbose_name': 'Container type',
+ 'verbose_name_plural': 'Container types',
+ 'ordering': ('label',),
+ },
+ bases=(ishtar_common.models.Cached, models.Model),
+ ),
+ migrations.CreateModel(
+ name='Warehouse',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('data', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default={})),
+ ('search_vector', django.contrib.postgres.search.SearchVectorField(blank=True, help_text='Auto filled at save', null=True, verbose_name='Search vector')),
+ ('qrcode', models.ImageField(blank=True, max_length=255, null=True, upload_to=ishtar_common.models.get_image_path)),
+ ('x', models.FloatField(blank=True, null=True, verbose_name='X')),
+ ('y', models.FloatField(blank=True, null=True, verbose_name='Y')),
+ ('z', models.FloatField(blank=True, null=True, verbose_name='Z')),
+ ('estimated_error_x', models.FloatField(blank=True, null=True, verbose_name='Estimated error for X')),
+ ('estimated_error_y', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Y')),
+ ('estimated_error_z', models.FloatField(blank=True, null=True, verbose_name='Estimated error for Z')),
+ ('point', django.contrib.gis.db.models.fields.PointField(blank=True, dim=3, null=True, srid=4326, verbose_name='Point')),
+ ('point_2d', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=4326, verbose_name='Point (2D)')),
+ ('point_source', models.CharField(blank=True, choices=[('T', 'Town'), ('P', 'Precise'), ('M', 'Polygon')], max_length=1, null=True, verbose_name='Point source')),
+ ('point_source_item', models.CharField(blank=True, max_length=100, null=True, verbose_name='Point source item')),
+ ('multi_polygon', django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326, verbose_name='Multi polygon')),
+ ('multi_polygon_source', models.CharField(blank=True, choices=[('T', 'Town'), ('P', 'Precise'), ('M', 'Polygon')], max_length=1, null=True, verbose_name='Multi-polygon source')),
+ ('multi_polygon_source_item', models.CharField(blank=True, max_length=100, null=True, verbose_name='Multi polygon source item')),
+ ('last_modified', models.DateTimeField(auto_now=True)),
+ ('history_m2m', django.contrib.postgres.fields.jsonb.JSONField(blank=True, default={})),
+ ('need_update', models.BooleanField(default=False, verbose_name='Need update')),
+ ('locked', models.BooleanField(default=False, verbose_name='Item locked for edition')),
+ ('address', models.TextField(blank=True, null=True, verbose_name='Address')),
+ ('address_complement', models.TextField(blank=True, null=True, verbose_name='Address complement')),
+ ('postal_code', models.CharField(blank=True, max_length=10, null=True, verbose_name='Postal code')),
+ ('town', models.CharField(blank=True, max_length=150, null=True, verbose_name='Town (freeform)')),
+ ('country', models.CharField(blank=True, max_length=30, null=True, verbose_name='Country')),
+ ('alt_address', models.TextField(blank=True, null=True, verbose_name='Other address: address')),
+ ('alt_address_complement', models.TextField(blank=True, null=True, verbose_name='Other address: address complement')),
+ ('alt_postal_code', models.CharField(blank=True, max_length=10, null=True, verbose_name='Other address: postal code')),
+ ('alt_town', models.CharField(blank=True, max_length=70, null=True, verbose_name='Other address: town')),
+ ('alt_country', models.CharField(blank=True, max_length=30, null=True, verbose_name='Other address: country')),
+ ('phone', models.CharField(blank=True, max_length=18, null=True, verbose_name='Phone')),
+ ('phone_desc', models.CharField(blank=True, max_length=300, null=True, verbose_name='Phone description')),
+ ('phone2', models.CharField(blank=True, max_length=18, null=True, verbose_name='Phone description 2')),
+ ('phone_desc2', models.CharField(blank=True, max_length=300, null=True, verbose_name='Phone description 2')),
+ ('phone3', models.CharField(blank=True, max_length=18, null=True, verbose_name='Phone 3')),
+ ('phone_desc3', models.CharField(blank=True, max_length=300, null=True, verbose_name='Phone description 3')),
+ ('raw_phone', models.TextField(blank=True, null=True, verbose_name='Raw phone')),
+ ('mobile_phone', models.CharField(blank=True, max_length=18, null=True, verbose_name='Mobile phone')),
+ ('email', models.EmailField(blank=True, max_length=300, null=True, verbose_name='Email')),
+ ('alt_address_is_prefered', models.BooleanField(default=False, verbose_name='Alternative address is prefered')),
+ ('uuid', models.UUIDField(default=uuid.uuid4)),
+ ('name', models.CharField(max_length=200, verbose_name='Name')),
+ ('comment', models.TextField(blank=True, null=True, verbose_name='Comment')),
+ ('external_id', models.TextField(blank=True, null=True, verbose_name='External ID')),
+ ('auto_external_id', models.BooleanField(default=False, verbose_name='External ID is set automatically')),
+ ],
+ options={
+ 'verbose_name': 'Warehouse',
+ 'verbose_name_plural': 'Warehouses',
+ 'permissions': (('view_warehouse', 'Can view all Warehouses'), ('view_own_warehouse', 'Can view own Warehouse'), ('add_own_warehouse', 'Can add own Warehouse'), ('change_own_warehouse', 'Can change own Warehouse'), ('delete_own_warehouse', 'Can delete own Warehouse')),
+ },
+ bases=(ishtar_common.models.StatisticItem, ishtar_common.models.TemplateItem, ishtar_common.models.DocumentItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models.FixAssociated, ishtar_common.models.CascasdeUpdate, ishtar_common.models.ImageContainerModel, ishtar_common.models.DashboardFormItem, ishtar_common.models.OwnPerms, ishtar_common.models.MainItem),
+ ),
+ migrations.CreateModel(
+ name='WarehouseDivision',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('label', models.TextField(verbose_name='Label')),
+ ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z', 32), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')),
+ ('comment', models.TextField(blank=True, null=True, verbose_name='Comment')),
+ ('available', models.BooleanField(default=True, verbose_name='Available')),
+ ],
+ options={
+ 'verbose_name': 'Warehouse division type',
+ 'verbose_name_plural': 'Warehouse division types',
+ },
+ bases=(ishtar_common.models.Cached, models.Model),
+ ),
+ migrations.CreateModel(
+ name='WarehouseDivisionLink',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('order', models.IntegerField(default=10, verbose_name='Order')),
+ ('division', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.WarehouseDivision')),
+ ('warehouse', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='divisions', to='archaeological_warehouse.Warehouse')),
+ ],
+ options={
+ 'ordering': ('warehouse', 'order'),
+ },
+ ),
+ migrations.CreateModel(
+ name='WarehouseType',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('label', models.TextField(verbose_name='Label')),
+ ('txt_idx', models.TextField(help_text='The slug is the standardized version of the name. It contains only lowercase letters, numbers and hyphens. Each slug must be unique.', unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-a-zA-Z0-9_]+\\Z', 32), "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens.", 'invalid')], verbose_name='Textual ID')),
+ ('comment', models.TextField(blank=True, null=True, verbose_name='Comment')),
+ ('available', models.BooleanField(default=True, verbose_name='Available')),
+ ],
+ options={
+ 'verbose_name': 'Warehouse type',
+ 'verbose_name_plural': 'Warehouse types',
+ 'ordering': ('label',),
+ },
+ bases=(ishtar_common.models.Cached, models.Model),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='associated_divisions',
+ field=models.ManyToManyField(blank=True, through='archaeological_warehouse.WarehouseDivisionLink', to='archaeological_warehouse.WarehouseDivision', verbose_name='Divisions'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='documents',
+ field=models.ManyToManyField(blank=True, related_name='warehouses', to='ishtar_common.Document', verbose_name='Documents'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Creator'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Last editor'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='imports',
+ field=models.ManyToManyField(blank=True, related_name='imported_archaeological_warehouse_warehouse', to='ishtar_common.Import'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='lock_user',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Locked by'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='main_image',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_image_warehouses', to='ishtar_common.Document', verbose_name='Main image'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='organization',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='warehouses', to='ishtar_common.Organization', verbose_name='Organization'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='person_in_charge',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='warehouse_in_charge', to='ishtar_common.Person', verbose_name='Person in charge'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='precise_town',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.Town', verbose_name='Town (precise)'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='spatial_reference_system',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'),
+ ),
+ migrations.AddField(
+ model_name='warehouse',
+ name='warehouse_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.WarehouseType', verbose_name='Warehouse type'),
+ ),
+ migrations.AddField(
+ model_name='containerlocalisation',
+ name='division',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.WarehouseDivisionLink', verbose_name='Division'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='container_type',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='archaeological_warehouse.ContainerType', verbose_name='Container type'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='documents',
+ field=models.ManyToManyField(blank=True, related_name='containers', to='ishtar_common.Document', verbose_name='Documents'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='history_creator',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Creator'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='history_modifier',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Last editor'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='imports',
+ field=models.ManyToManyField(blank=True, related_name='imported_archaeological_warehouse_container', to='ishtar_common.Import'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='location',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='containers', to='archaeological_warehouse.Warehouse', verbose_name='Location (warehouse)'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='lock_user',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='Locked by'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='main_image',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='main_image_containers', to='ishtar_common.Document', verbose_name='Main image'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='responsible',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='owned_containers', to='archaeological_warehouse.Warehouse', verbose_name='Responsible warehouse'),
+ ),
+ migrations.AddField(
+ model_name='container',
+ name='spatial_reference_system',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.SpatialReferenceSystem', verbose_name='Spatial Reference System'),
+ ),
+ migrations.AddField(
+ model_name='collection',
+ name='warehouse',
+ field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='collections', to='archaeological_warehouse.Warehouse', verbose_name='Warehouse'),
+ ),
+ migrations.AlterUniqueTogether(
+ name='warehousedivisionlink',
+ unique_together=set([('warehouse', 'division')]),
+ ),
+ migrations.AddIndex(
+ model_name='warehouse',
+ index=django.contrib.postgres.indexes.GinIndex(fields=['data'], name='archaeologi_data_49b6ad_gin'),
+ ),
+ migrations.AlterUniqueTogether(
+ name='containerlocalisation',
+ unique_together=set([('container', 'division')]),
+ ),
+ migrations.AddIndex(
+ model_name='container',
+ index=django.contrib.postgres.indexes.GinIndex(fields=['data'], name='archaeologi_data_edae47_gin'),
+ ),
+ migrations.AlterUniqueTogether(
+ name='container',
+ unique_together=set([('index', 'responsible')]),
+ ),
+ migrations.AddIndex(
+ model_name='collection',
+ index=django.contrib.postgres.indexes.GinIndex(fields=['data'], name='archaeologi_data_4a4a83_gin'),
+ ),
+ ]