diff --git a/netbox/users/constants.py b/netbox/users/constants.py index f891d5573..e92623c82 100644 --- a/netbox/users/constants.py +++ b/netbox/users/constants.py @@ -3,8 +3,7 @@ from django.db.models import Q OBJECTPERMISSION_OBJECT_TYPES = Q( ~Q(app_label__in=['account', 'admin', 'auth', 'contenttypes', 'sessions', 'taggit', 'users']) | - Q(app_label='auth', model__in=['group', 'user']) | - Q(app_label='users', model__in=['objectpermission', 'token']) + Q(app_label='users', model__in=['objectpermission', 'token', 'group', 'user']) ) CONSTRAINT_TOKEN_USER = '$user' diff --git a/netbox/users/migrations/0009_update_group_perms.py b/netbox/users/migrations/0009_update_group_perms.py index 835a09c33..f3b197492 100644 --- a/netbox/users/migrations/0009_update_group_perms.py +++ b/netbox/users/migrations/0009_update_group_perms.py @@ -1,6 +1,6 @@ # Generated by Django 5.0.5 on 2024-05-15 18:05 -from django.db import migrations +from django.db import migrations, models def update_content_types(apps, schema_editor): @@ -29,4 +29,25 @@ class Migration(migrations.Migration): code=update_content_types, reverse_code=migrations.RunPython.noop ), + migrations.AlterField( + model_name='objectpermission', + name='object_types', + field=models.ManyToManyField( + limit_choices_to=models.Q( + models.Q( + models.Q( + ( + 'app_label__in', + ['account', 'admin', 'auth', 'contenttypes', 'sessions', 'taggit', 'users'], + ), + _negated=True, + ), + models.Q(('app_label', 'users'), ('model__in', ['objectpermission', 'token', 'group', 'user'])), + _connector='OR', + ) + ), + related_name='object_permissions', + to='core.objecttype', + ), + ), ]