2015-05-19 45 views
2

我正在尝试Mike Kelly的this youtube link教程。Grails列表视图不工作

我已成功完成所有安装。现在尝试dynamic scaffolding,但其列表不起作用。

这是show页面的外观,当我添加了一个新的EndUser,如:

enter image description here

现在,当我尝试看看的EndUser的名单,(见的左下角指向链接上图),链接实际上指向index页面。当我点击它时,它会打开索引页,其中列出了NO行(如下图所示)。

enter image description here

我也试图通过使用URL访问列表:http://localhost:9000/ProjectTracker/endUser/list,但随后导致到404错误:当我看到数据库控制台

enter image description here

,我发现得到的数据插入它:

enter image description here

所有文件(控制器,域文件等)都是一样的,在视频教程提到)

+0

?和教程中的一样吗? –

+0

我从http://spring.io/tools/ggts/all使用最新ggts(基于eclipse 4.4.2的windows ggts),它有grails-2.4.4 –

+0

Grails 2.4.4使用“index”代替“列表” –

回答

2

这是Grails的版本2.4.4:

正如@DavidChavez建议我们可以写那些indexlist方法给出。或者干脆依靠动态脚手架,我们可以只用忽略写作/ 删除indexlist方法。动态脚手架将默认呼叫index,内部调用list方法。

+1

谢谢,你救了我的命。我只使用动态脚手架。但是控制器有一个默认生成的索引方法。阅读你的评论后,我删除了索引方法,瞧,我能看到列表。 –

1

由于Grails的2.3.x版本中的list.gsp已被替换index.gsp中 现在你必须要找到原因记录没有保存在数据库中。

的方式脚手架生成2.4.4索引和列表的方法应该是这样的:

def index() { 
    redirect(action: "list", params: params) 
} 

def list(Integer max) { 
    params.max = Math.min(max ?: 10, 100) 
    [endUserInstanceList: EndUser.list(params), endUserInstanceTotal: EndUser.count()] 
} 

尝试与那些人。

+0

哦,好的。 。 (我忘了提及的问题)其实我看着数据库,我看到数据插入分贝,并可在那里。但它没有在页面上列出。 –

+0

在教程中,他正在使用没有关于对象列表的信息的索引。 尝试使用生成控制器脚本而不是使用这些方法。 http://grails.github.io/grails-doc/2.4.4/ref/Command%20Line/generate-controller.html 您正在使用的教程已过时,我建议您阅读官方文档或尝试查找你正在使用的grails版本的书 –

+0

你解决了这个问题!使用静态脚手架工程。但那么这是一项麻烦的任务。现在,我必须在新版本中看到动态脚手架。感谢名单! –

0

尝试这种在EndUserController,Grails的2.4.4

def index() { 
    [endUserInstanceList: EndUser.list(params), endUserInstanceTotal: EndUser.count()] 
} 
是否使用的是Grails的版本