Activerecord 从TypeForm中的列名数组中查找列结果的位置
目前我有以下疑问:Activerecord 从TypeForm中的列名数组中查找列结果的位置,activerecord,typeorm,Activerecord,Typeorm,目前我有以下疑问: return await this.siteRepository.find({ where: [{ id: Like(`%${q}%`) }, { name: Like(`%${q}%`) }] }); 但是我希望能够从数组中传递用于查询的列名列表,而不是手动写入每个列名 const columns = ["id","name", "lastName", "age"] const query = {}; return await this.siteRep
return await this.siteRepository.find({
where: [{ id: Like(`%${q}%`) }, { name: Like(`%${q}%`) }]
});
但是我希望能够从数组中传递用于查询的列名列表,而不是手动写入每个列名
const columns = ["id","name", "lastName", "age"]
const query = {};
return await this.siteRepository.find({
where: columns.map(column=>{(query[`${column}`] = `Like("%${q}%")}`)})
});
这可能吗?我开始觉得现在不是这样。我没有用
存储库类型化方法实现我想要的,但我用QueryBuilder
这是我的解决办法
const res=['id','name'].map(item=>`${item}LIKE:q`)。join('OR');
return wait this.siteRepository
.createQueryBuilder()
.where(res,{q:`%${q}%`})
.getMany()代码>
这将产生一个
从`User`` User`中选择`User`.`id`作为`User\u id`、`User`.`name`作为`User\u name`、`User`.`lastName`作为`User\u lastName`、`User`.`active`作为`User\u active`作为`User\u active`进行选择?或者我想要什么?