1
情境:我有一個基於實體的表單。這個實體有兩個屬性國家和staticRank和這兩個兩個屬性的元組應該是唯一的...... 但是:的staticRank可能是不需要的,原因在於,它可以爲null。我嘗試使用UniqueEntity註釋解決這個問題:Symfony表單驗證:UniqueEntity - 多個字段 - 包括一個可爲空的字段
@UniqueEntity(fields={"country", "staticRank"})
這不是工作像預期的,因爲如果staticRank是空應當按照我的定義的有效組合。然而,有幾個元組給予相同的國家和空(對於staticRank),所以約束記錄違反。
實際問題:有沒有一種方法來實現這種行爲而不繼承「UniqueEntityValidator」?
編輯:據我所經歷的,約束的ignoreNull - 屬性將只允許兩個值是零(或者如果約束僅設置爲單場)
國家和staticRank實體是多對多關係還是實體的字段? – Mawcel
@Mawcel國家是一個ManyToOne,staticRank只是一個領域(都在同一個實體中使用) – thellmei
http://stackoverflow.com/questions/25810738/unique-values-for-two-columns-in-doctrine – Mawcel