日期:类[class grailsappl1]的属性[Date]不能为空
我有一个表格,其中我正在为特定的固定装置和场地名称创建日期,我无法创建日期。我曾尝试在fixture类中将date设置为nullable:true,以测试场地创建是否有效,结果显示的是场地,但日期不可用 这是我的域名类日期:类[class grailsappl1]的属性[Date]不能为空,grails,groovy,datepicker,Grails,Groovy,Datepicker,我有一个表格,其中我正在为特定的固定装置和场地名称创建日期,我无法创建日期。我曾尝试在fixture类中将date设置为nullable:true,以测试场地创建是否有效,结果显示的是场地,但日期不可用 这是我的域名类 package cricketfixturesgrailsapp class Fixture { Date date String venue // hasMany = [scores:Scores] static hasMany = [
package cricketfixturesgrailsapp
class Fixture {
Date date
String venue
// hasMany = [scores:Scores]
static hasMany = [team:Team]
static constraints = {
date nullable: true
}
}
这是我的FixtureController类
package cricketfixturesgrailsapp
class FixtureController {
//def index() { }
def fixtureService
//def scaffold=true
def add() {
if (request.method == 'GET') {
[fixtureBean: new Fixture()]
}
else {
def fixture = fixtureService.createFixture(params.fixture?.date, params.fixture?.venue)
if (!fixture.hasErrors()) {
redirect action: 'show', id: fixture.id
return
}
[fixtureBean: fixture]
}
}
def show() {
def fixture = Fixture.get(params.id)
if (fixture) {
[fixtureBean: fixture]
}
}
def find() {
if (request.method == 'POST') {
def fixtures = Fixture.findAllByDate(params.date)
if (fixtures) {
if (fixtures.size() > 1) {
render view: 'selection', model: [fixtures: fixtures]
}
else {
redirect action: 'show', id: fixtures[0].id
}
}
else {
[message: 'fixtures.not.found']
}
}
}
}
和add.gsp文件
<%@ page contentType="text/html;charset=UTF-8" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Add fixture</title>
</head>
<body id = "add">
<h2><g:if test="${!fixtureBean.id}">New </g:if>Fixture:</h2>
<g:form action="${fixtureBean.id ? 'edit' : 'add'}" id="${fixtureBean?.id}">
<table>
<tr>
<th>
Date: <span class="errors"><g:fieldError bean="${fixtureBean}" field="date" /></span>
<br/>
<g:datePicker name="fixtureBean.date" value="${ fixtureBean.date}" precision="day"></g:datePicker>
</th>
</tr>
<tr>
<th>
<g:render template="/common/formField"
model="[name:'fixture', bean:fixtureBean, field:'venue', label:'Venue']" />
</th>
</tr>
<tr>
<td>
<p><input type="submit" value="${ fixtureBean.id ? 'Update' : 'Add'} Fixture"/></p>
</td>
</tr>
</table>
</g:form>
</body>
</html>
</body>
</html>
您的名称不匹配 如果您有:
<g:datePicker name="fixtureBean.date"/>
而不是
fixtureService.createFixture(params.fixture?.date
fixtureService.createFixture(params.fixtureBean?.date
fixtureService.createFixture(params.fixture?.date