def save(self, *args, **kwargs): if not self.mask: self.mask = 0 self.data = convert_to_json(self.data) self.accessHistory = convert_to_json(self.accessHistory) cache_expire_ru(self, 'realOwner_vd_ids') super(VD, self).save(*args, **kwargs)
def save(self, *args, **kwargs): if not self.vd: raise IntegrityError('Proxy.vd must not be None') if not self.id: # 나중에 vd 가 바뀔 수 있으며, 이때부터 proxy.id != proxy.vd.id self.id = self.vd.id self.guide = convert_to_json(self.guide) super(Proxy, self).save(*args, **kwargs)
def create(self, request, *args, **kwargs): # vd 조회 vd = self.vd if not vd: return Response(status=status.HTTP_401_UNAUTHORIZED) # guide 조회 guide = convert_to_json(request.data['guide']) # myself 변환 if 'vd' in guide and guide['vd'] == 'myself': guide['vd'] = vd.id # check validation 1 if 'type' in guide and guide['type'] == 'user': ru = RealUser.objects.get(email=guide['email']) if ru == self.vd.realOwner: return Response(status=status.HTTP_400_BAD_REQUEST) # proxy 조회 try: proxy = Proxy.objects.get(guide=guide) except Proxy.DoesNotExist: vd_publisher = VD() # TODO : type 이 images 가 아닌 경우에 대한 구현 if guide['type'] == 'images': vd_publisher.is_private = True vd_publisher.is_public = False vd_publisher.parent = vd vd_publisher.save() proxy = Proxy.objects.create(vd=vd_publisher, guide=guide) # check validation 2 if not proxy.vd: raise NotImplementedError if proxy.vd == vd: return Response(status=status.HTTP_400_BAD_REQUEST) if proxy.vd.is_private: if not proxy.vd.parent: raise NotImplementedError if proxy.vd.parent != vd: return Response(status=status.HTTP_403_FORBIDDEN) # importer 생성 및 celery task 처리 importer, is_created = Importer.objects.get_or_create(publisher=proxy, subscriber=vd) importer.start(high_priority=is_created) # 결과 처리 serializer = self.get_serializer(importer) return Response(serializer.data, status=status.HTTP_201_CREATED)
def save(self, *args, **kwargs): if not self.created: self.created = get_timestamp() self.data = convert_to_json(self.data) super(Inquiry, self).save(*args, **kwargs)
def save(self, *args, **kwargs): if not self.email: raise ValueError('RealUser.email cannot be None') self.data = convert_to_json(self.data) self.email = BaseUserManager.normalize_email(self.email) super(RealUser, self).save(*args, **kwargs)
def save(self, *args, **kwargs): self.value = convert_to_json(self.value) super(Storage, self).save(*args, **kwargs)