diff --git a/gracedb/migrations/guardian/0004_add_guardian_anonymoususer_to_public_group.py b/gracedb/migrations/guardian/0004_add_guardian_anonymoususer_to_public_group.py new file mode 100644 index 0000000000000000000000000000000000000000..fbd73f93760694827ab7ba2619fadd02c7f58e67 --- /dev/null +++ b/gracedb/migrations/guardian/0004_add_guardian_anonymoususer_to_public_group.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.14 on 2018-08-09 14:20 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations + +from guardian.conf import settings as guardian_settings + + +def add_to_group(apps, schema_editor): + User = apps.get_model('auth', 'User') + Group = apps.get_model('auth', 'Group') + + # Get anonymous user + user = User.objects.get(username=guardian_settings.ANONYMOUS_USER_NAME) + + # Get public group + group = Group.objects.get(name=settings.PUBLIC_GROUP) + + # Add user to group + group.user_set.add(user) + + +def remove_from_group(apps, schema_editor): + User = apps.get_model('auth', 'User') + Group = apps.get_model('auth', 'Group') + + # Get anonymous user + user = User.objects.get(username=guardian_settings.ANONYMOUS_USER_NAME) + + # Get public group + group = Group.objects.get(name=settings.PUBLIC_GROUP) + + # Add user to group + group.user_set.remove(user) + + +class Migration(migrations.Migration): + + dependencies = [ + ('guardian', '0003_update_emfollow_accounts'), + ('auth', '0010_initial_group_data'), + ] + + operations = [ + migrations.RunPython(add_to_group, remove_from_group), + ]