是否可以在不循环的情况下在Sequelize中的传入值前面添加一些内容?

Is it possible to add something in front of the incoming value in Sequelize without looping?

我正在使用 Sequelize 库。当我 return 文件路径时,我需要在开头添加一组路径。我必须 return 为此吗?

太糟糕了..:'(

const getDatabase = await itemModel.findAll({
        attributes: ['itemId', 'itemFilename', 'itemOriginalName']
    })
    let responseData = []
    getDatabase.forEach(element => {
        responseData.push({
            itemId: element.itemId,
            itemOriginalName: element.itemOriginalName,
            itemFilename: `${process.env.SERVER}/getMyFiles/${reqAuth.userCompany}/items/${element.itemFilename}`
        })
    })
    return responseData

您可以在模型中添加 beforeFind 钩子:

// in your itemModel.js file
ItemModel.beforeFind((instance, options) => {
  // set method does not save to db unless you tell instance.save()
  instance.set('itemFilename', `${process.env.SERVER}/getMyFiles/${reqAuth.userCompany}/items/${instance.getDataValue('itemFilename')}`);
})