Передайте kwargs методу сохранения модели

Я застрял в странной ситуации, у меня есть kwarg['device_id'], к которому мне нужно получить доступ в моем методе сохранения save method, есть ли способ добиться этого, причина, по которой я хочу избежать переопределения метода update, потому что я сохранил свои внешние вызовы API в методе сохранения модели, нужна помощь, спасибо

def save(self, *args, **kwargs):
        device_uid = (getattr(self,'device_id')).upper()
        device_name = getattr(self,'device_name')
        device_profile_name = getattr(self,'device_profile_name')
        app_id = getattr(self,'device_profile_name')
        
      

        # check whether model is getting saved or updated
        if self._state.adding:
            device_status, error_remarks = add_device(app_id,device_profile_name,device_uid,device_name)
        else:
          
            print(device_name,device_uid,device_profile_name,app_id)
            device_status, error_remarks = update_device(app_id,device_profile_name,device_uid,device_name) <<-- API call
        
        if device_status == 200 :
          
            super(DeviceSubscription, self).save(*args, **kwargs)
            schedulars.check_device()
        else:
            print(error_remarks)
            raise RequestException('err:{}'.format(er








#update device
@api_view(['PUT'])
def update_device(request,*args,**kwargs):
    if kwargs['device_id']:
        try:
            device_ins = DeviceSubscription.objects.get(device_id = kwargs['device_id'])
            serialized_data = DeviceAdditionSerializer(device_ins,request.data,partial = True)
            if serialized_data.is_valid(raise_exception=True):
                serialized_data.save()
                return Response({'data':serialized_data.data},status=200) 
        except Exception as e:
            return Response({'err':str(e)},status=400)
    else:
        return Response({'status':'bad request'},status=400)
Вернуться на верх