postgresql - 从 typeorm 中提取特定数据
问题描述
这是我获取关注者的功能
async getFollowingFriend(authUser: User): Promise<FollowingFriendsOutput> {
try {
const followers = await this.follow.find({
where: { follower: authUser },
relations: ['follower', 'following'],
});
console.log(followers);
return {
ok: true,
};
} catch (error) {
console.log(error);
return {
ok: error,
error: "You can't get following friend",
};
}
}
通过这样做,我得到了这样的数据
[
Follow {
id: 35,
createAt: 2021-04-03T13:28:17.395Z,
updatedAt: 2021-04-03T13:28:17.395Z,
follower: User {
id: 24,
createAt: 2021-04-02T10:52:30.605Z,
updatedAt: 2021-04-03T00:47:02.243Z,
firstName: null,
lastName: null,
email: 'admin@admin.com',
password: '$2b$10$5vcYImjdp3JqBODmeS.3nOsNqy2CBCsjvocV3Z//5Jv0wDp6LImB.',
gender: 1,
country: null,
address: null
},
following: User {
id: 26,
createAt: 2021-04-02T10:52:44.638Z,
updatedAt: 2021-04-02T10:52:44.638Z,
firstName: null,
lastName: null,
email: 'go@go.com',
password: '$2b$10$.ul2rxR9JV2hA1zFn3HYNekolwkiFZDfLznNwz3LFf6XJE9zEw8Va',
gender: null,
country: null,
address: null
}
]
这些是我的关注数据,但实际上这不是我想要的,
我只想提取位于末尾的关注数据
我尝试了很多其他方法,但我无法做到
有没有其他方法可以解决它?
我正在使用 typeorm 和 postgresql 并使用 nestjs 框架
谢谢
解决方案
要仅获取以下数据,您必须从关系数组中删除关注者实体:
async getFollowingFriend(authUser: User): Promise<FollowingFriendsOutput> {
try {
const followers = await this.follow.find({
where: { follower: authUser },
relations: ['following'],
});
console.log(followers);
return {
ok: true,
};
} catch (error) {
console.log(error);
return {
ok: error,
error: "You can't get following friend",
};
}
}