diff --git a/gracedb/migrations/0001_initial.py b/gracedb/migrations/0001_initial.py index 5c36f7d956e18f8653e90e1bcf9aad7a187a4b96..6dc69e8609e7ddc6643556eeebe0730cfe4655bd 100644 --- a/gracedb/migrations/0001_initial.py +++ b/gracedb/migrations/0001_initial.py @@ -8,7 +8,7 @@ from django.conf import settings class Migration(migrations.Migration): dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('auth', '0008_auto_20171020_1045'), ] operations = [ diff --git a/migrations/guardian/0001_initial.py b/migrations/guardian/0001_initial.py index 9eeba1b22aa77ab55e24605fadde4594b1455371..ba6e1ff473f53e09ae3b0a89788b70a4c2263aaf 100644 --- a/migrations/guardian/0001_initial.py +++ b/migrations/guardian/0001_initial.py @@ -1,44 +1,58 @@ # -*- coding: utf-8 -*- +# Generated by Django 1.11.5 on 2017-10-25 17:25 from __future__ import unicode_literals -from django.db import models, migrations from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +from django.apps import apps as django_apps +def guardian_post_migrate_signal(apps, schema_editor): + + # We need to emit a post-migrate signal so that django.contrib.auth + # will create the permission objects corresponding to the new + # GroupObjectPermission and UserObjectPermission models that were + # created by django-guardian. This is definitely not the nicest + # way of doing things, but it's what we are stuck with for now. + print("\n\nManually emitting post-migrate signal for guardian:") + guardian_config = django_apps.get_app_config('guardian') + models.signals.post_migrate.send( + sender=guardian_config, + app_config=guardian_config, + verbosity=2, + interactive=False, + using=schema_editor.connection.alias, + ) class Migration(migrations.Migration): + initial = True + dependencies = [ - ('auth', '0001_initial'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('contenttypes', '0001_initial'), + ('auth', '0008_auto_20171020_1045'), + ('contenttypes', '0002_remove_content_type_name'), ] operations = [ migrations.CreateModel( name='GroupObjectPermission', fields=[ - ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('object_pk', models.CharField(max_length=255, verbose_name='object ID')), - ('content_type', models.ForeignKey(to='contenttypes.ContentType')), - ('group', models.ForeignKey(to='auth.Group')), - ('permission', models.ForeignKey(to='auth.Permission')), + ('content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.ContentType')), + ('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='auth.Group')), + ('permission', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='auth.Permission')), ], - options={ - }, - bases=(models.Model,), ), migrations.CreateModel( name='UserObjectPermission', fields=[ - ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('object_pk', models.CharField(max_length=255, verbose_name='object ID')), - ('content_type', models.ForeignKey(to='contenttypes.ContentType')), - ('permission', models.ForeignKey(to='auth.Permission')), - ('user', models.ForeignKey(to=settings.AUTH_USER_MODEL)), + ('content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.ContentType')), + ('permission', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='auth.Permission')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], - options={ - }, - bases=(models.Model,), ), migrations.AlterUniqueTogether( name='userobjectpermission', @@ -48,4 +62,5 @@ class Migration(migrations.Migration): name='groupobjectpermission', unique_together=set([('group', 'permission', 'object_pk')]), ), + migrations.RunPython(guardian_post_migrate_signal, reverse_code=None), ]