티스토리 뷰
반응형

요즘 간단한 API를 개발하고 있는데 두 테이블이 sourcekey와 foreignkey로 연결되어있다. 이를 연결하여 sequelize 구문을 동작시키는데 이 연결 메소드가 여러가지라는 것을 이번에 알게되어 정리한다.
Sequelize에서 belongsTo, hasMany, hasOne은 데이터베이스에서 관계를 표현하는 방법을 나타내는 Sequelize의 메소드이다. 각각의 메소드는 다음과 같은 역할을 한다
belongsTo
- 다른 모델에 속하는 관계를 정의
- 예를 들어, “A 모델은 B 모델에 속한다”와 같은 관계를 설정할 때 사용
아래 예시는 Post 모델이 User 모델에 속하는 관계를 설정
Post.belongsTo(User, { foreignKey: 'userId' })
hasMany
- 한 모델이 다른 모델을 여러 개 가질 수 있는 관계를 정의
- 예를 들어, “A 모델은 여러 개의 B 모델을 가질 수 있다”와 같은 관계를 설정할 때 사용
아래 예시는 User 모델이 여러 개의 Post 모델을 가질 수 있는 관계를 설정
User.hasMany(Post, { foreignKey: 'userId' })
hasOne
- 한 모델이 다른 모델을 하나만 가질 수 있는 관계를 정의
- 예를 들어, “A 모델은 하나의 B 모델을 가질 수 있다”와 같은 관계를 설정할 때 사용
아래 예시는 User 모델이 하나의 Profile 모델을 가질 수 있는 관계를 설정
User.hasOne(Profile, { foreignKey: 'userId' })
요약하면,
belongsTo는 다른 모델에 속하는 관계를 설정하고,
hasMany는 여러 개의 관련 모델을 가질 수 있는 관계를 설정하며,
hasOne은 하나의 관련 모델을 가질 수 있는 관계를 설정한다
반응형
'Etc.' 카테고리의 다른 글
Visual Studio Code Snippet (for React) (0) | 2024.11.30 |
---|---|
Windows OS에 Powershell로 Node, Git 설치하기 (관리자 권한이 막혀있을 때) (1) | 2024.11.29 |
Flux architecture (0) | 2024.11.20 |
PNG와 SVG, JPEG는 각각 언제 사용해야 할까? (1) | 2024.11.10 |
Express의 Cron Job (0) | 2024.11.05 |
- Total
- Today
- Yesterday
반응형