fix role & role pernissions for user

This commit is contained in:
2025-08-07 13:16:10 +03:30
parent fe6417b1c3
commit bc8c884678
2 changed files with 21 additions and 21 deletions

View File

@@ -4,21 +4,21 @@ from django.db.models.signals import post_save, post_delete
from django.dispatch import receiver
@receiver([post_save], sender=UserRelations)
def sync_role_permissions(sender, instance, **kwargs):
""" add role permissions to user relation permissions in is null """
# if _from_signal=True prevent from maximum recursion loop
if getattr(instance, '_from_signal', False):
return
if instance.role:
permissions = instance.role.permissions.all()
if not instance.permissions.exists():
instance.permissions.add(*permissions) # noqa
instance._from_signal = True
instance.save()
# @receiver([post_save], sender=UserRelations)
# def sync_role_permissions(sender, instance, **kwargs):
# """ add role permissions to user relation permissions in is null """
#
# # if _from_signal=True prevent from maximum recursion loop
# if getattr(instance, '_from_signal', False):
# return
#
# if instance.role:
# permissions = instance.role.permissions.all()
# if not instance.permissions.exists():
# instance.permissions.add(*permissions) # noqa
#
# instance._from_signal = True
# instance.save()