2014-02-11 91 views
0

基本上,您在if中放入了什麼,以便在其中一個屬性中出現錯誤時進行過濾。驗證grails中屬性的錯誤

可以說我在MyClass域中有三個屬性。然後,當一個錯誤,如果該屬性將觸發

def save(Long id){ 
    def myInstance = new MyClass(params) 

    if (!myInstance.save(flush: true)) { 
     if(){ 
     //show my custom error message 1 
     redirect(action: "list") 
     return 
     } 
     if(){ 
     //show my custom error message 2 
     redirect(action: "list") 
     return 
     } 
     if(){ 
     //show my custom error message 3 
     redirect(action: "list") 
     return 
     } 
    } 

    //show my created message 
    redirect(action: "list")  
} 
+0

myInstance.errors.allErrors.each {}? – havenchyk

+0

@baxxabit但這隻會迭代所有錯誤。我仍然不能確定什麼領域,所以自定義錯誤將是不正確的 – Jan

回答

1

您可以使用hasFieldErrors(String域)功能:

if(myInstance.errors.hasFieldErrors('myField')) { 
    //... 
}