отношения OneToMany - ManyToOne возвращают нулевую форму
Я установил связь между двумя таблицами, которые у него есть: Пользователи и Задачи. в соответствии с комментариями 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'],
});
}
когда я пытаюсь получить, чтобы получить список пользователя вместе с задачами, созданными этим пользователем. значение столбца равно нулю
и если я выполняю задачи, он возвращает мне пользователя как null
[
{
"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": []
}
]
1 ответ
попробуйте это в своих отношениях:
return this.ormRepository.find({ relations: {user: true });