我在1.2.4上看到添加了UniqueCheck。這真的太棒了! 但是,我在使用超類和實現類時遇到了一些問題。PlayFramework中超類的UniqueCheck?
一個例子會比長的帖子更好:
@Entity
@Inheritance(strategy= InheritanceType.JOINED)
abstract class Utilisateur extends Model {
@Unique
public String email;
..
}
和兩個實現Candidat &企業公司都伸到Utilisateur。
您不能添加兩個具有相同電子郵件的Candidat,也不能添加具有相同電子郵件的兩個Entreprise。 但是,您可以讓Candidat用戶使用與Entreprise用戶相同的電子郵件!
我決定到Digg深一點,發現這一點:
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是基於SELECT COUNT查詢。
看起來不錯,但不應該考慮超級班嗎?
任何想法如何繞過此?