0
您可以檢查Grails域類中的自定義驗證器內字段的組合唯一性嗎?Grails域自定義驗證器檢查唯一性
Long points
String field1
String field2
Level level
level validator {val,obj->
if(obj.points<1000){
//make sure level is unique with field 1
level unique: ['field1']
}
else{
//make sure level is unique with field 2
level unique: ['field2']
}
}
你不能用這種方式指定唯一性。請記住,在數據庫級別指定唯一性,並且不能在數據庫中執行此操作。 – cantoni
所以我將不得不運行一個查詢,並檢查組合是否已經存在?findWhere(level:val,field1:object.field1)?// valid:// error – user2782001
是啊!在這種情況下,您必須創建一個可定製的解決方案來確保應用程序的唯一性。請記住,如果你想要數據庫中的唯一性,你需要兩個表(一個包含Field1 + Level的表和一個包含Field2 + Level的表)。 – cantoni