3
这让我完全困惑了一阵子。我收到了奇怪的行为,试图循环erb中的文本行,并在循环完成时打印整行文本。ERB在each_line循环结束时打印出enitre字符串
<% "some\nmultiline\ntext".each_line do |line| %>
<%= line %> <br />
<% end %>
输出:
some
multiline
text
some multiline text
也是如此:
<% "some\nmultiline\ntext".lines.each do |line| %>
<%= line %> <br />
<% end %>
但正如我会期待它了以下工作:
<% "some\nmultiline\ntext".lines.to_a.each do |line| %>
<%= line %> <br />
<% end %>
和打印:
some
multiline
text
我是绝对是不只是在=
意外。什么可能导致这种奇怪的行为?
我使用Rails 3.0.10,Ruby 1.9.2。
大量来自The Grounded Rubyist,第10章的文本。 – Bohdan 2011-12-14 16:18:12