저는이 포럼을 처음 사용하고 Play Framework를 처음 사용합니다. 나는 디플로마 작업을하고 있고, MySQL 스키마 엔티티에 매핑 된 Play 모델과 관련하여 약간의 문제가 있습니다."Double"PlayFramework의 모델 간의 ManyToMany 관계
기본적으로 "발표"및 "기술"엔티티 (모델)가 있으며 두 개 이상의 ManyToMany 관계를 만들고 싶습니다. 좀 더 구체적으로 말하자면 "RequiredTecnologies"와 "Good-To-KnowTechnologies"크로스 테이블이 필요합니다. 이 두 테이블을 "분할"할 수있는 방법이 있습니까? 다음은 발표를 다시 시작하는 "id"열을 반복하여 하나의 ManyToMany 테이블을 생성하는 코드입니다.
// ENTITY ANNOUNCE
...
@Entity
public class Announce extends Model {
...
@JoinColumn(nullable=true)
@ManyToMany
public List<Technology> reqTechno;
@JoinColumn(nullable=true)
@ManyToMany
public List<Tehnologija> gtkTechno;
...
}
// ENTITY TECHNOLOGY
...
@Entity
public class Technology extends Model {
...
@ManyToMany(mappedBy = "reqTechno")
public List<Announce> annRT;
@ManyToMany(mappedBy = "gtkTechno")
public List<Announce> annGT;
...
}
이 코드는 다음과 같은 방식으로 MySQL의 테이블을 생성합니다
annRT_id reqTechno_id annGT_id gtkTechno_id
______________________________________________
1 2 1 7
1 3 1 9
null null 1 10
2 4 2 7
내 원하는 결과는 다음과 같습니다
annRT_id reqTechno_id annGT_id gtkTechno_id
__________________________ ______________________
1 2 1 7
1 3 1 9
2 4 1 10
2 7
감사합니다 사전에 어떤 도움에 감사드립니다!
P. 사용중인 Play 버전은 v. 1.2.5입니다.
당신이 @JoinColumn을 (널 (NULL) = false)를 사용하려고 유무 : D – mirkobrankovic