我正在使用
TypeORM
开发一个项目,并且我正在尝试在连接表中的列上添加 WHERE 条件。我有一个与列表实体具有多对一关系的预订实体。这是相关的代码片段:
findAllByUserId(userId: number) {
return this.reservationRepository.find({
relations: ['listing', 'listing.favourite'],
where: { user_id: userId }
});
}
我在尝试在列表中的列上添加 WHERE 条件时遇到问题。 如果您能提供有关如何正确向 TypeORM 中的连接表添加条件的指导,我将不胜感激。
尝试如下所示:
findAllByUserIdWithCondition(userId: number, conditionValue: string): Promise<Reservation[]> {
return this.reservationRepository
.createQueryBuilder('reservation')
.innerJoinAndSelect('reservation.listing', 'listing')
.innerJoinAndSelect('listing.favourite', 'favourite')
.where('reservation.user_id = :userId', { userId })
.andWhere('listing.columnName = :conditionValue', { conditionValue })
.getMany();
}
}