aircox/permissions: use unqualified codename in group permissions

This commit is contained in:
Chris Tactic 2024-11-06 14:39:45 +01:00
parent c09ad6c1fd
commit 7a5bb3fb41

View File

@ -23,6 +23,7 @@ class PagePermissions:
"""Format used for permission name (displayed to humans)."""
perms_codename_format = "{obj._meta.label_lower}_{obj.pk}_{perm}"
"""Format used for permissions codename."""
perms_cn_format = "{obj._meta.model_name}_{obj.pk}_{perm}"
def __init__(self, model):
self.model = model
@ -78,7 +79,7 @@ class PagePermissions:
# TODO: avoid multiple database hits
for name in infos["perms"]:
perm, _ = Permission.objects.get_or_create(
codename=self.perms_codename_format.format(obj=obj, perm=name),
codename=self.perms_cn_format.format(obj=obj, perm=name),
content_type=ContentType.objects.get_for_model(obj),
defaults={"name": self.perms_name_format.format(obj=obj, perm=name)},
)