Существует описание, как это сделать в официальных документах typeorm https://typeorm.io/#/many-to-one-one-to-many-relations. Но я не могу сделать то же самое в NestJS с Repository
и insert
методом.
Я написалэти объекты (другие столбцы были опущены)
@Entity()
export class News {
@OneToMany(type => NewsImage, image => image.news)
public images: NewsImage[];
}
@Entity()
export class NewsImage {
@ManyToOne(type => News, news => news.images)
public news: News;
}
Я пробовал что-то вроде этого
function first() {
const news = new News();
const image = new NewsImage();
news.images = [ image ];
return from(this.newsRepo.insert(news))
.pipe(
switchMap(() => this.imageRepo.insert(image)),
);
}
function second() {
const news = new News();
const image = new NewsImage();
image.news = news;
return from(this.imageRepo.insert(image))
.pipe(
switchMap(() => this.newsRepo.insert(news)),
)
}
Он вставляет новости и изображения, но изображение newsId
равно null
.