【问题标题】:Embedded Ruby HTML Loops Spit Out Number of Loop [duplicate]嵌入式 Ruby HTML 循环吐出循环数 [重复]
【发布时间】:2015-08-05 21:20:14
【问题描述】:

部分我有:

<%= shift.ones.times do %>
<p>one</p>
<% end %>

最终的 HTML(来自页面源)是:

<p>one</p>
1 

这是为什么?我怎样才能阻止它?

提前致谢。

【问题讨论】:

  • 这一次又一次地出现,它总是相同的东西,因此是重复的。公平地说,找到所有重复项可能很困难。
  • 我不知道这是我遇到的问题,所以我不确定要搜索什么。既然我知道了,我应该删除它吗?

标签: html ruby-on-rails ruby


【解决方案1】:

只需将 &lt;%= 更改为 &lt;%

<% shift.ones.times do %>
  <p>one</p>
<% end %>

这是因为&lt;%= 计算表达式并打印返回值,而&lt;% 只计算表达式。 times 方法返回块被处理的次数(在您的示例中为1 时间)。

【讨论】:

  • 我会解释一下,使用&lt;%=实际上输出了ruby代码的返回结果,而&lt;%没有(&lt;%用于计算而不输出,比如循环数组,设置变量,做一些逻辑等)
  • 谢谢,这是我犯的愚蠢错误。
猜你喜欢
  • 2016-10-19
  • 2013-06-10
  • 1970-01-01
  • 1970-01-01
  • 2013-03-09
  • 2012-01-14
  • 2020-07-08
  • 2016-04-17
  • 1970-01-01
相关资源
最近更新 更多