0

次のように作成および保存メソッドがあります。

def create () {
  def myColorInstance = new Color()
  return (colorInstance: myColorInstance]
}

def save () {
  Date someDate = params.date("somedate", "MM/dd/yyyy")
  int someInt = params.int("someInt")
  color = colorService.add(params.colorname, someDate, someInt)
  if (color.hasErrors())
    render (view: "create", model: [colorInstance: color])
  else
    redirect (action: "list")
} 

私のレイアウトページには次のものがあります。

 <g:hasErrors>
       <div class="alert alert-error">Please try submitting again</div>
 </g:hasErrors>

これで得られる動作は、ユーザーが何かを入力して検証に失敗したときです。メッセージが表示Please try submitting againされ、URL がhttp://localhost:8080/myapp/color/save次のように変更され、2 回目の送信時に (再び何も入力せずに)、アプリが次のメッセージで失敗します。 java.lang.Integer' 代わりに"

このタイプのシナリオを処理する最良の方法は何ですか? ユーザーにエラーメッセージを一番上に表示してもらいたいのですが、ユーザーはエラーをもう一度修正して、もう一度送信してみるとうまくいくはずです..

4

1 に答える 1