我已经使用IncomeDate作为Date并尝试以字符串'2015-08-02'的形式提交。我试图以不同的方式提交它,但出错了。


class IncomeTransaction {
    Date incomeDate
    ------
}

.gsp
<input type="text" name="incomeDate" placeholder="yyyy-mm-dd" />

Controller :
String dateString = params.incomeDate
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date myDate = formatter.parse(dateString);
incomeTransactionInstance.incomeDate = myDate

// get error like ---- Property incomeDate be a valid Date in grails

/*Another way*/
//params.incomeDate = new Date().parse( 'yyyy-MM-dd', params.incomeDate )
// get error like ---- unparsable

最佳答案

  • 如果您不知道但想自己找到,grails就是一件好事,您始终可以生成 Controller 并通过grails进行查看,看看它是如何完成的。
  • 我用于日期的不是输入类型的文本,而是以下内容:
    <g:datePicker name="incomeDate" precision="day"  value="${incomeTransactionInstance?.incomeDate}" default="none" noSelection="['': '']" />
    

  • 在您的 Controller 中,您不需要任何解析,然后:
    incomeTransactionInstance.properties = params
    

    并保存您的对象

    08-17 17:20