fix role & role pernissions for user
This commit is contained in:
@@ -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()
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user