Typeorm ManyToMany加入3表

时间:2020-08-11 10:54:33

标签: typeorm

我有这个查询

SELECT * FROM USERS
LEFT JOIN USER_GROUPS
ON USER_GROUPS.USER_ID = USERS.USER_ID
LEFT JOIN GROUPS_ROLES
ON GROUPS_ROLES.GROUP_ID = USER_GROUPS.GROUP_ID
LEFT JOIN ROLES
ON ROLES.ROLE_ID = GROUPS_ROLES.ROLE_ID;

我想在Entity中描述他与ManyToMany的关系 有可能吗?

1 个答案:

答案 0 :(得分:0)

当然是这样,只需描述一下:

@Entity()
export class User {

    @PrimaryGeneratedColumn()
    id: number;

    @Column()
    name: string;

    @ManyToMany(type => Group)
    @JoinTable()
    groups: Group[];
}

@Entity()
export class Group {

    @PrimaryGeneratedColumn()
    id: number;

    @Column()
    name: string;

    @ManyToMany(type => Role)
    @JoinTable()
    roles: Role[];
}

@Entity()
export class Role {

    @PrimaryGeneratedColumn()
    id: number;

    @Column()
    name: string;

}

就是这样。应该可以。