ROLE

问题描述 投票:0回答:1

我在一个已经存在的数据库上使用typeorm.我有三个表。

+-------------+--------------+----------------------------+
|                        ROLE                             |
+-------------+--------------+----------------------------+
| r_id        | int(11)      | PRIMARY KEY AUTO_INCREMENT |
| r_name      | varchar(50)  |                            |
| r_status    | tinyint      |                            |
+-------------+--------------+----------------------------+
+-------------+--------------+----------------------------+
|                        PERMISSION                       |
+-------------+--------------+----------------------------+
| p_id        | int(11)      | PRIMARY KEY AUTO_INCREMENT |
| p_name      | varchar(50) |                            |
+-------------+--------------+----------------------------+
+-------------+--------------+----------------------------+
|                       PERMISSION_ROLE                   |
+-------------+--------------+----------------------------+
| p_id        | int(11)      | PRIMARY KEY FOREIGN KEY    |
| r_id        | int(11)      | PRIMARY KEY FOREIGN KEY    |
+-------------+--------------+----------------------------+

我把这些实体写在typeorm-ROLE中。

@Entity({ name: "ROLE" })
export class Role {
  @PrimaryGeneratedColumn()
  public r_id: Number;
  @Column()
  public r_nome_ruolo: string;
  @Column()
  public r_stato: Boolean;

  @OneToMany(() => PermissionRole, (permission_role) => permission_role.permission)
  @JoinColumn({ name: "r_id" })
  permission_role: PermissionRole[];
}
  • 许可证

@Entity({ name: "PERMISSION" })
export class Permission {
  @PrimaryGeneratedColumn()
  public p_id: Number;
  @Column()
  public p_nome_permesso: string;
  @OneToMany(() => PermissionRole, (permission_role) => permission_role.permission)
  @JoinColumn({ name: "p_id" })
  permission_role: PermissionRole[];
}
  • PERMISSION_ROLE
@Entity({ name: "PERMISSION_ROLE" })
export class PermissionRole {
  @ManyToOne(() => Permission, (permission: Permission) => permission.p_id, { primary: true })
  @JoinColumn({ name: "p_id" })
  permission: Permission;
  @ManyToOne(() => Role, (role: Role) => role.r_id, { primary: true })
  @JoinColumn({ name: "r_id" })
  role: Role;
}

问题是,我不能从关系中重新获取数据.如果我尝试这样的东西。

permissionRepository.find({ relations: ["permission_role"] })

或者...

roleRepository.find({ relations: ["permission_role"] })

我在结果中收到了权限_角色,但有一个空数组。

提前感谢大家的帮助

mysql node.js typescript typeorm
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.