def perform_create(self, serializer): user = UserUtils.get_user_from_request(self.request) instance = serializer.save(owner=user, created_by=user, modified_by=user) message = '%s added %s' % (user.username, str(instance)) self.log_addition(user, instance, message)
def current_user(request): """ API endpoint that fetch current login user. """ user = UserUtils.get_user_from_request(request) return Response( serializers.serialize('json', User.objects.filter(id=user.id)))
def perform_destroy(self, instance): instance.deleted = True user = UserUtils.get_user_from_request(self.request) instance.modified_by = user instance.modified_at = timezone.now() instance.save(force_update_deleted=True) message = '%s soft deleted %s' % (user.username, str(instance)) self.log_deletion(user, instance, message)
def perform_update(self, serializer): instance = serializer.save() user = UserUtils.get_user_from_request(self.request) instance.modified_by = user instance.modified_at = timezone.now() instance.save() message = '%s changed %s' % (user.username, str(instance)) self.log_change(user, instance, message)
def save_model(self, request, obj, form, change): user = UserUtils.get_use_from_request(request) obj.modified_by = user obj.modified_at = timezone.now() if not change: obj.owner = user obj.created_by = user obj.created_at = timezone.now() super().save_model(request, obj, form, change)
def save(self, force_insert=False, force_update=False, using=None, update_fields=None, force_update_deleted=False): if self.deleted and not force_update_deleted: raise UpdateDeletedError(_("Deleted record can not be update!")) self._soft_touch() self.modified_at = timezone.now() # set created_at and created_by in creating if self._get_pk_val is None: self.created_at = timezone.now() if self.created_by is None: self.created_by = UserUtils.get_unknown_user() return super().save(force_insert, force_update, using, update_fields)
def _soft_touch(self, by_user=None): self.modified_at = timezone.now() if by_user is not None: self.modified_by = by_user if self.modified_by is None: self.modified_by = UserUtils.get_unknown_user()
def set_user(self, user=None): if user is None: user = UserUtils.get_unknown_user() self.owner = user self.created_by = user self.modified_by = user
def current(self, request): user = UserUtils.get_user_from_request(request) serializer = self.get_serializer(user, many=False) return Response(serializer.data)
def current(self, request): user = UserUtils.get_user_from_request(request) self.queryset = User.objects.filter(id=user.id)