2014-01-19 78 views
1

我無法顯示驗證錯誤的Grails:閃光消息和錯誤

def saveTable() { 
    def tableInstance = new Table(params) 
    if (!tableInstance.save(flush: true)) { 
     tableInstance.errors.each { 
      flash.message = it //<---- this part 
     } 
     redirect(action: "listTable") 
     return 
    } 

    flash.message = message(code: 'default.created.message', args: [message(code: 'table.label', default: 'Table'), tableInstance.id]) 
    redirect(action: "listTable") 

閃光燈消息似乎沒有表現出

我想,如果顯示有println it錯誤的錯誤,有錯誤也

我有一個正常的字符串flash.message = "a"測試,它與我的腳本工作

<script type='text/javascript'> 
     (function() { 
      <g:if test='${flash.message}'> 
      $('document').ready(function(){ 
       $.gritter.add({ 
        title: '', 
        text: '${flash.message}', 
        image: '', 
        sticky: false, 
        time: ''    
       }); 
       return false; 
      }); 
      </g:if> 
     })(); 
    </script> 

回答

2

此代碼重置每個循環迭代中的flash.message。

tableInstance.errors.each { 
     flash.message = it //<---- this part 
    } 

嘗試錯誤結合這樣例如

tableInstance.errors.each { 
     flash.message += it + "<br>" 
    } 
+0

它仍然無法正常工作。我可能需要將錯誤解析爲字符串 – Jan