Grails脚手架显示的列数少于域

Vic*_*ngh 2 grails controller scaffolding scaffold

我的域类中有6列.但是当scaffold设置为true时,我只在控制器列表上看到5列.我的数据库是mySql.当执行表时,使用正确的列数创建我的域类

class RouteDesc {
String routenumber
String routeoperator
String routeinstructions
Date validfrom
Date validto
String weekendavailablity

static constraints = {
    routenumber blank:false, unique:true,  display:true
    routeoperator blank:false,  display:true
    routeinstructions blank:true,  display:true
    validfrom display:true
    validto display:true
    weekendavailablity display:true
}
//static belongs to = RouteId

String toString () {
    return routenumber
}
}
Run Code Online (Sandbox Code Playgroud)

我的Controller类

class RouteDescController {

  static scaffold = true
}
Run Code Online (Sandbox Code Playgroud)

Jar*_*son 7

默认的脚手架列表页面将列数限制为6(因为eachWithIndex基于零),其中1个将用于ID列,因此只显示5个属性.如果您想更改此设置,您可以安装模板grails install-templates(在Grails 2.0中)将模板置于其下src/templates/scaffolding/.您需要更新的模板是list.gsp,大约有一半是以下代码:

...
props.eachWithIndex { p, i ->
    if (i < 6) {
       ...
    }
}
Run Code Online (Sandbox Code Playgroud)

您需要将6更改为您想要的任何内容.作为旁注,字段通过脚手架显示的顺序可以通过约束中定义它们的顺序来控制(http://grails.org/doc/latest/guide/scaffolding.html).

  • eachWithIndex是从零开始的,所以应该显示6 (3认同)