我正在使用TypeORM查询一个简单的“ Like”实体,其定义如下:
@Entity()
export class Like extends BaseEntity {
@ManyToOne(type => Post, post => post.likeList)
post: Post;
@ManyToOne(type => Contest, contest => contest.likeList)
contest: Contest; // Denormalization
@ManyToOne(type => User, user => user.likeList)
user: User;
}
我需要基于where子句选择确定的postId
,为实现这一点,我正在使用repository
运行以下查询
const test = await this.repository.find({
where: {
user: userId,
contest: contestId,
},
select: ['post'],
});
针对我的postgres数据库运行时,生成的SQL语句-SELECT "Like"."postId" FROM "like" "Like" WHERE "Like"."userId" = $1 AND "Like"."contestId" = $2 -- PARAMETERS: [3,1]
-产生以下输出:
有趣的是,test
的值始终是一个空数组...我缺少什么?
答案 0 :(得分:0)
您可以尝试
const test = await this.repository.find({
where: {
user: userId,
contest: contestId,
},
relations: ['post'],
});
console.log('result data: test', test);
return test;