Sequelize将查询参数分配给Model



我在一个控制器文件中导入了几个模型,用于查询Sequelize。

const ModelA = require('../models/ModelA')
const ModelB = require('../models/ModelB')

我想创建一个API(使用express和NodeJS(,它允许一个名为includes的查询参数。

获取/api/v1/myrequest?包括=型号A、型号B

includes是可选的。

我生成一个查询对象:

const { include } = query.params      
const queryObject = {}
queryObject.include = [{
model: Model,
as: 'Model',
include: include ? include.split(',') : [] // either ModelA, ModelB, none or both
}
]

它不起作用,因为动态include查询只是一个数组。但我想要的是将我导入的真实模型映射到req.query请求中。

所有模型都应事先在Sequelize中注册。这样你就可以做到以下几点:

include.split(',').map(x => sequelize.models[x])

最新更新