<aside> 🤔

ex) 계좌 입장에서는 여러개의 계좌가 하나의 사용자에게 연결되있기 때문에 ManyToOne()

</aside>

<aside> 🤔

Post 입장에서는 여러개의 Post가 하나의 유저에게 귀속되기 때문에, ManyToOne()

</aside>

// 1. postModel
export class PostModel {
  @PrimaryGeneratedColumn()
  id: number;

  // 포스트 모델 입장에서는 다수이기 때문에 ManyToOne
  @ManyToOne(() => UserModel, (user) => user.posts)
  author: UserModel;

  @Column()
  title: string;
}

// 2. userModel
export class UserModel {
	@PrimaryGeneratedColumn()
  id: number;
  
  // 유저 입장에서는 유저 하나가 여러개의 Post를 가질수 있음.
  @OneToMany(() => PostModel, (post) => post.author)
  // 다수의 PostModel을 배열로 가질 수 있음.
  posts: PostModel[];
}

<aside> 💡 One to One에서 했던것처럼, @JoinColumn을 할 필요가 없다.

</aside>

@Get('users')
  getUsers() {
    return this.userRepository.find({
      relations: {
        profile: true,
        posts: true,
      },
    });
  }

Untitled

<aside> 💡 Many to One이 되는 테이블에서 상대방 테이블의 아이디를 가지고 있다.

</aside>

Many To One / One To May 저장할때 주의점