|
|
|
|
@ -1,8 +1,8 @@ |
|
|
|
|
from django.db import models |
|
|
|
|
from django.utils import timezone |
|
|
|
|
# from django.apps import apps |
|
|
|
|
from django.core.exceptions import ObjectDoesNotExist |
|
|
|
|
from django.conf import settings |
|
|
|
|
from django.db import transaction |
|
|
|
|
|
|
|
|
|
from ..registry import model_registry |
|
|
|
|
import uuid |
|
|
|
|
@ -71,10 +71,13 @@ class DataAccess(BaseModel): |
|
|
|
|
obj = model_class.objects.get(id=self.model_id) |
|
|
|
|
related_instance = obj.related_instances() |
|
|
|
|
related_instance.append(obj) |
|
|
|
|
for instance in related_instance: |
|
|
|
|
if isinstance(instance, BaseModel): |
|
|
|
|
instance.add_data_access_relation(self) |
|
|
|
|
instance.save() |
|
|
|
|
|
|
|
|
|
with transaction.atomic(): |
|
|
|
|
for instance in related_instance: |
|
|
|
|
logger.info(f'adds DataAccess to {instance.__class__.__name__}') |
|
|
|
|
if isinstance(instance, BaseModel): |
|
|
|
|
instance.add_data_access_relation(self) |
|
|
|
|
instance.save() |
|
|
|
|
except ObjectDoesNotExist: |
|
|
|
|
pass |
|
|
|
|
|
|
|
|
|
@ -85,9 +88,11 @@ class DataAccess(BaseModel): |
|
|
|
|
obj = model_class.objects.get(id=self.model_id) |
|
|
|
|
related_instance = obj.related_instances() |
|
|
|
|
related_instance.append(obj) |
|
|
|
|
for instance in related_instance: |
|
|
|
|
if isinstance(instance, BaseModel): |
|
|
|
|
instance.remove_data_access_relation(self) |
|
|
|
|
instance.save() |
|
|
|
|
|
|
|
|
|
with transaction.atomic(): |
|
|
|
|
for instance in related_instance: |
|
|
|
|
if isinstance(instance, BaseModel): |
|
|
|
|
instance.remove_data_access_relation(self) |
|
|
|
|
instance.save() |
|
|
|
|
except ObjectDoesNotExist: |
|
|
|
|
pass |
|
|
|
|
|