Cannot override a delete route

Hello,
I have an issue when trying to override a route. I’m trying to delete a location and also the image related to that specific location in a S3 bucket.

Here is my delete route custom code :

router.delete('/location/:recordId', permissionMiddlewareCreator.delete(), (request, response, next) => {
  const { recordId }  = request.params;
  const recordRemover = new RecordRemover(location);

  location.findByPk(recordId)
    .then((location) => deleteObjectToS3(`locations/${location.photoUrl}`))
    .then(() => recordRemover.remove(recordId) )
    .then(() => response.status(204).send())
    .catch(next);
});

And here is the error i got :

[forest] 🌳🌳🌳  Unexpected error: Cannot read properties of undefined (reading 'timezone')
{
  "stack": "TypeError: Cannot read properties of undefined (reading 'timezone')\n    at new AbstractRecordService (C:\\DevSpace\\find-a-resource\\node_modules\\forest-express\\dist\\services\\exposed\\abstract-records-service.js:20:17)\n    at RecordRemover._createSuperInternal (C:\\DevSpace\\find-a-resource\\node_modules\\forest-express\\dist\\services\\exposed\\record-remover.js:21:317)\n    at new RecordRemover (C:\\DevSpace\\find-a-resource\\node_modules\\forest-express\\dist\\services\\exposed\\record-remover.js:34:19)\n    at C:\\DevSpace\\find-a-resource\\routes\\location.js:90:25\n    at Layer.handle [as handle_request] (C:\\DevSpace\\find-a-resource\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (C:\\DevSpace\\find-a-resource\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at _callee$ (C:\\DevSpace\\find-a-resource\\node_modules\\forest-express\\dist\\middlewares\\permissions.js:117:19)\n    at tryCatch (C:\\DevSpace\\find-a-resource\\node_modules\\regenerator-runtime\\runtime.js:63:40)\n    at Generator.invoke [as _invoke] (C:\\DevSpace\\find-a-resource\\node_modules\\regenerator-runtime\\runtime.js:294:22)\n    at Generator.next (C:\\DevSpace\\find-a-resource\\node_modules\\regenerator-runtime\\runtime.js:119:21)\n    at asyncGeneratorStep (C:\\DevSpace\\find-a-resource\\node_modules\\forest-express\\node_modules\\@babel\\runtime\\helpers\\asyncToGenerator.js:3:24)\n    at _next (C:\\DevSpace\\find-a-resource\\node_modules\\forest-express\\node_modules\\@babel\\runtime\\helpers\\asyncToGenerator.js:25:9)"

  • Project name: find-a-resource
  • Team name: Operations
  • Environment name: development

Hi @Joel_Alexandre_Khang and welcome in our community ! :champagne:

You are missing parameters in the constructor of RecordsRemover. If you look in the documentation you will see the missing part :wink:

1 Like

Hi @vince . Thank you, actually i was browsing to an old documentation version