我有这个想法
@ManyToMany(() => User, user => user.following)
@JoinTable()
followers: User[]
@ManyToMany(() => User, user => user.followers)
following: User[]
如何在此关系中插入新关注者? 我是typeorm和sql数据库的新手
答案 0 :(得分:0)
您可以通过启用级联来执行此操作:
@ManyToMany(() => User, user => user.following, {cascadeInsert: true, cascadeUpdate: true})
@JoinTable()
followers: User[]
@ManyToMany(() => User, user => user.followers, {cascadeInsert: true, cascadeUpdate: true})
following: User[]
如果您不想使用cascadeInsert和cascadeUpdate,则必须手动保存相关实体:
const follower1 = new Follower({...});
await connection.manager.save(follower1);
const follower2 = new Follower({...});
await connection.manager.save(follower2);
const entity = new Entity();
entity.followers = [follower1, follower2];
await connection.manager.save(entity);
有关详细信息,请参阅TypeORM文档:https://github.com/typeorm/typeorm/blob/master/docs/many-to-many-relations.md)