2010-09-07 77 views
1

我有一个控制器和一个gsp。我继续尝试构建项目,但在我的gsp上收到问题。Grails自定义服务器页面(自定义gsp)

它告诉我,“目前的范围已经包含它的名称的变量”

<html> 
    <head> 
    <title>Book Collector</title> 
    <meta name="layout" content="main" /> 
    </head> 
    <body> 
    <h1>Book Editor</h1> 
    <table> 
     <tr> 
     <th>Book Name</th> 
     <th>Author</th> 
     <th>Page Number</th> 
     <th>Vendor</th> 
     <th>Date Scanned</th> 
     <th>Date Read</th> 
     </tr> 
     <% bookList.each { it -> %> 
     <tr> 
     <td><%= it.bookName %></td> //this is where the error starts 
     <td><%= it.author %></td>  //error (it) 
     <td><%= it.pageNumber %></td> //error (it) 
     <td><%= it.lastScan %></td> //error (it) 
     <td><%= it.lastRead %></td> //error (it) 
     <% } %> 
     </tr> 
    </table> 
    </body> 
</html> 

不允许我用“它”这样呢?还是有什么明显的我失踪了?

+1

因为你是刚刚开始,我会建议开始www.grails.org – 2010-09-07 23:48:04

+1

但你说得对。你不能用“它 - >”,但如果你省略'它 - >'我相信它会起作用 - 但它并不是真正的Groovy/Grails做法! – sbglasius 2010-09-08 09:54:28

回答

2

http://www.grails.org/Views+and+Layouts

<html> 
<head> 
    <title>Book list</title> 
</head> 
<body> 
<h1>Book list</h1> 
<table> 
    <tr> 
     <th>Title</th> 
     <th>Author</th> 
    </tr> 
    <g:each in="${books}"> 
     <tr> 
      <td>${it.title}</td> 
      <td>${it.author}</td> 
     </tr> 
    </g:each> 
</table> 
</body> 
</html> 
+0

感谢您提供非常快速的回复。我会做更多的阅读。你能给我一个简单的解释,为什么像这样:<%bookList.each {它 - >%>不起作用? bookList中有一些我不需要的信息,这就是为什么我选择迭代并获取所需内容的原因。我买了Groovy Recipes这本书来学习,但作者承担了基本的知识。 (我一直在阅读一些Grails) – StartingGroovy 2010-09-07 23:54:52

+0

我会推荐Grails和Grails在行动的权威指南,他们都是优秀的书籍 – 2010-09-07 23:56:44

+1

提供的解决方案可以让你挑选出你需要的......也是我相信“它”在默认情况下......如果有帮助请标记为正确答案,这将鼓励更多人回答您的问题。在StackOverflow中有丰富的知识,所以最好在发布问题之前在这里搜索 – 2010-09-07 23:59:14