关系 OneToMany - ManyToOne 返回 null typeorm

时间:2021-04-16 13:50:41

标签: json typescript postgresql typeorm

我在它拥有的两个表之间建立了关系:用户和任务。 根据 Typeorm 说明

型号:

 @Entity('tasks')
class Tasks {
  @PrimaryGeneratedColumn('uuid')
  id: string;

  @Column()
  name: string;

  @Column({
    type: 'varchar',
  })
  status: tasksStatus;

  @ManyToOne(() => User, user => user.tasks)
  user: User;

  @Column()
  description: string;

  @CreateDateColumn()
  created_at: Date;

  @UpdateDateColumn()
  updated_at: Date;
}

@Entity('users')
class User {
  @PrimaryGeneratedColumn('uuid')
  id: string;

  @Column()
  name: string;

  @OneToMany(() => Tasks, task => task.user)
  tasks: Tasks[];

  @Column({
    unique: true,
  })
  email: string;

  @Column()
  password: string;

  @CreateDateColumn()
  created_at: Date;

  @UpdateDateColumn()
  updated_at: Date;
}

存储库:

public async findAll(): Promise<Tasks[]> {
    return this.ormRepository.find({ relations: ['user'] });
  }

public async findByAll(): Promise<User[]> {
    return this.ormRepository.find({
      relations: ['tasks'],
    });
  }

当我尝试获取 get 时,获取用户的列表以及该用户创建的任务。列值为空

如果我执行任务,它会将我的用户返回为空

[
  {
    "id": "91d9c552-64e7-4f64-b6e8-b8cfc9c6323a",
    "name": "teste do teste",
    "status": "NEW",
    "description": "testeteste do testeteste do testeteste do teste",
    "created_at": "2021-04-16T11:23:01.144Z",
    "updated_at": "2021-04-16T11:23:01.144Z",
    "user": null
  }
]




[ {
    "id": "ba2673a6-1d76-4294-98d1-3dc4556733d7",
    "name": "Wesley9",
    "email": "wesley19@email.com",
    "password": "$2a$08$xTprPchGJj3vy3vRfa2P2OWHn5V.hqMh8gQn7323J1wi7WjeWXzbG",
    "created_at": "2021-04-16T11:22:28.617Z",
    "updated_at": "2021-04-16T11:22:28.617Z",
    "tasks": []
  }
]

0 个答案:

没有答案
相关问题