|
|
|
|
@ -39,7 +39,9 @@ def presave_handler(sender, instance, **kwargs): |
|
|
|
|
if signal == pre_save: |
|
|
|
|
detect_foreign_key_changes_for_shared_instances(sender, instance) |
|
|
|
|
sig_type = 'pre_save' |
|
|
|
|
else: |
|
|
|
|
elif signal == pre_delete: |
|
|
|
|
if hasattr(instance, 'id'): |
|
|
|
|
DataAccess.objects.filter(model_id=instance.id).delete() |
|
|
|
|
sig_type = 'pre_delete' |
|
|
|
|
# logger.info(f'* {sig_type} : {instance.__class__.__name__} > impacted users = {users}') |
|
|
|
|
|
|
|
|
|
@ -274,12 +276,12 @@ def process_foreign_key_changes(sender, instance, **kwargs): |
|
|
|
|
|
|
|
|
|
### Data Access |
|
|
|
|
|
|
|
|
|
@receiver(post_delete) |
|
|
|
|
def delete_data_access_if_necessary(sender, instance, **kwargs): |
|
|
|
|
if not isinstance(instance, BaseModel): |
|
|
|
|
return |
|
|
|
|
if hasattr(instance, 'id'): |
|
|
|
|
DataAccess.objects.filter(model_id=instance.id).delete() |
|
|
|
|
# @receiver(post_delete) |
|
|
|
|
# def delete_data_access_if_necessary(sender, instance, **kwargs): |
|
|
|
|
# if not isinstance(instance, BaseModel): |
|
|
|
|
# return |
|
|
|
|
# if hasattr(instance, 'id'): |
|
|
|
|
# DataAccess.objects.filter(model_id=instance.id).delete() |
|
|
|
|
|
|
|
|
|
@receiver(m2m_changed, sender=DataAccess.shared_with.through) |
|
|
|
|
def handle_shared_with_changes(sender, instance, action, pk_set, **kwargs): |
|
|
|
|
|