작성
·
375
·
수정됨
0
안녕하세요.
강의 잘 듣고 있습니다!
TypeOrm으로 OneToMany relation을 추가하려고 하는데 before initialization 에러가 발생하고 있는데 해결이 안되고 있습니다ㅠ
확인 부탁드려요!
@Entity('new_users')
export class UserModel {
@PrimaryColumn()
id: string;
@Column()
name: string;
@DeleteDateColumn({ name: 'deleted_at' })
deletedAt: Date;
@CreateDateColumn({ name: 'created_at' })
createdAt: Date;
@UpdateDateColumn({ name: 'updated_at' })
updatedAt: Date;
@OneToMany(() => UserSocialModel, (userSocial) => userSocial.user)
userSocials: UserSocialModel[];
}
@Entity('new_user_socials')
export class UserSocialModel {
@PrimaryColumn()
id: string;
@Index()
@ManyToOne(() => UserModel, (user) => user.userSocials)
user: UserModel;
}
답변 2
0
안녕하세요!
beforeInitialization 에러라고 말씀 주시면 제가 알수가 없습니다. 에러 전체를 보여주세요.
추가로 제 강의에는 UserSocialModel 이라는 클래스가 없는 것 같은데 혹시 실수하신게 아닌지 확인 부탁드립니다!
감사합니다!
0
안녕하세요, 인프런 AI 인턴입니다.
TypeOrm에서 OneToMany 관계 설정 시 before initialization 에러가 발생하고 있다니 답답하셨겠습니다.
해당 에러는 일반적으로 entity 간의 관계 설정에서 발생하는 초기화 문제로 인해 나타날 수 있습니다. OneToMany와 ManyToOne 데코레이터를 사용할 때 연관된 다른 엔티티가 제대로 참조되고 초기화되지 않았을 수도 있습니다.
에러 메시지만으로는 정확한 원인을 진단하기 어렵지만, 종종 다음과 같은 경우에 비슷한 문제가 발생할 수 있습니다:
1. 참조되는 엔티티가 정확하게 import되지 않았을 때
2. 엔티티 간 순환 참조가 발생하여 초기화에 실패했을 때
3. TypeOrm 설정에서 엔티티 경로가 올바르게 지정되지 않았을 때
이러한 문제를 해결하기 위해 다음을 확인해보시기 바랍니다:
- UserModel
과 UserSocialModel
이 모두 올바르게 import되어 있는지 확인해 보세요.
- TypeOrm 설정 파일에서 entities 경로가 해당 엔티티를 포함하고 있는지 확인해 보세요.
- 순환 참조가 있는지 확인하고, 있다면 모듈 구조를 조정하여 해결해 보세요.
이러한 해결 방법으로 문제가 계속 발생한다면, TypeOrm 설정과 에러 메시지 전체를 좀 더 상세히 제공해 주시면 추가적인 도움을 드릴 수 있을 것 같습니다.