1.2.4에서 UniqueCheck가 추가 된 것을 보았습니다. 어느 쪽이 정말로 굉장한가! Howerer, 수퍼 클래스 및 구현 클래스에서 사용하는 것과 관련하여 문제가 발생합니다.PlayFramework의 수퍼 클래스에 대한 UniqueCheck?
예는 긴 포스트보다 더 나은 될 것입니다 :
@Entity
@Inheritance(strategy= InheritanceType.JOINED)
abstract class Utilisateur extends Model {
@Unique
public String email;
..
}
그리고 두 가지 구현 Candidat & ENTREPRISE 모두 확장 Utilisateur.
동일한 전자 메일을 가진 후보를 두 명 추가 할 수 없으며 같은 전자 메일을 가진 두 명의 Entreprise를 추가 할 수도 없습니다. 그러나 Entreprise 사용자와 동일한 이메일을 가지고있는 Candidat 사용자를 보유 할 수 있습니다!
나는 조금 더 깊은 디그로 결정이 발견 :select count(entreprise0_.id) as col_0_0_ from Entreprise entreprise0_ inner join Utilisateur entreprise0_1_ on entreprise0_.id=entreprise0_1_.id where entreprise0_1_.email=? limit ?
UniqueCheck은 선택 카운트 쿼리를 기반으로합니다.
괜찮아 보이지만 수퍼 클래스를 고려해서는 안되나요?
아이디어를 무시하는 방법에 대한 아이디어가 있으십니까?