diff --git a/djangoldp_circle/migrations/0037_auto_20231004_1523.py b/djangoldp_circle/migrations/0037_auto_20231004_1523.py
index 7a00f9994879f3339b5155b7e905c1bdef71e371..53187b551cfefd3ebbc3ecb1b524a47498761ebe 100644
--- a/djangoldp_circle/migrations/0037_auto_20231004_1523.py
+++ b/djangoldp_circle/migrations/0037_auto_20231004_1523.py
@@ -5,11 +5,15 @@ from guardian.shortcuts import assign_perm
 def create_group(apps, circle, field_name, permissions):
     Group = apps.get_model("auth", "Group")
     Permission = apps.get_model("auth", "Permission")
+    GroupObjectPermission = apps.get_model("guardian", "GroupObjectPermission")
+    ContentType = apps.get_model("contenttypes", "ContentType")
     group = Group.objects.create(name=f'LDP_{circle._meta.model_name}_{field_name}_{circle.id}')
     setattr(circle, field_name, group)
     for perm_name in permissions:
-        perm = Permission.objects.get(content_type__app_label='djangoldp_circle', codename=f'{perm_name}_circle')
-        group.permissions.add(perm)
+        ctype = ContentType.objects.get(model='circle')
+        permission = Permission.objects.get(content_type=ctype, codename=f'{perm_name}_circle')
+        GroupObjectPermission.objects.get_or_create(permission=permission, group=group, content_type=ctype, object_pk=circle.pk)
+
 
 def migrate_groups(apps, schema_editor):
     '''copies the members and admins of the circles into new groups'''