使用列表模板标签的开始/结束变量
我正在使用 Play Framework,并对模板有疑问:
我想使用 list 作为带有 from 和 to 变量的 for 循环:
#{list pages:results.startPage..results.endPage, as:'page'}
${page}
#{/list}
results.startPage 和 results.endPage 都有有效值。我不 收到错误消息,但不显示任何输出。我是什么 做错了吗?
谢谢
I'm using the Play Framework and have a question about templates:
I want to use list as a for loop with from and to variables:
#{list pages:results.startPage..results.endPage, as:'page'}
${page}
#{/list}
Both results.startPage and results.endPage have valid values. I don't
receive an error message, however no output is displayed. What am I
doing wrong?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
编辑:在花时间写了一个大答案之后,您的代码中有一个错误!
在 #list 标记中,您应该有
items
,而不是pages
。您的代码应该可以读取。对于那些对 Groovy Range 变量如何工作感兴趣的人,下面是一个描述,而不是我删除长答案!
我认为您使用范围方法的方式是错误的。 for 循环的 Groovy Range 构造允许您从一个值循环到另一个值。这通常是整数或字符串,而不是列表。
因此,如果执行以下操作,它将打印 0 到 10
但是,可以在控制器中设置这些值。因此,如果您想使用控制器中设置的
start
和end
变量(假设它们设置为 0 和 10),您可以执行以下操作。我测试该构造的控制器如下,并且工作正常。
这将打印相同的 0 到 10。即使我通过封装在类中发送这些变量,它仍然可以正常工作。
您确定
startPage
和endPage
是整数值吗?EDIT: After spending the time writing a big answer, there is a bug in your code!
In your #list tag, you should have
items
, and notpages
. Your code should read.For those interested in how the Groovy Range variable works, below is a description, rather than me delete the long answer!
I think you are using the range method in the wrong way. The Groovy Range construct for the for loop, allows you to loop from one value to another value. This is generally a integer or a string, and not a List.
So, if you do the following, it will print 0 to 10
However, the values can be set in your controller. So if you want to use a
start
andend
variable set in your controller (assume they are set to 0 and 10), you can do the following.My controller to test that construct is as follows, and it works fine.
This will print the same 0 to 10. Even if I send these variables through encapsulated in a class, it still works fine.
Are you sure that
startPage
andendPage
are integer values?