1
我是一个Ruby on Rails的新手,从PHP背景的内循环。我有这样的代码:Ruby on Rails的:打印字符串,而红宝石块
<%=
form_for(@user, :url => new_user_path) do |form|
form.label :name, 'Name: '
form.text_field(:name)
form.label :age, 'Age: '
form.text_field(:age)
end
%>
唯一的字符串被打印/返回的最后一部分/行,因为这是红宝石块是如何工作的,我明白。现在在下一个代码中,它会打印所有内容。
<%= form_for(@user, :url => new_user_path) do |form| %>
<%= form.label :name, 'Name: ' %>
<%= form.text_field(:name) %>
<%= form.label :age, 'Age: ' %>
<%= form.text_field(:age) %>
<% end %>
我怎样才能让没有在每一行使用<%=
和%>
打印所有的标签。我正在寻找这样的,因为我来自PHP,如果可以的话,它可以使我的代码更具可读性和整洁性。或者,也许我可能做错了?我已经尝试过建立串,然后将变量在所述块的端部到由环路被返回,例如:
<%=
form_build = String.new
form_for(@user, :url => new_user_path) do |form|
form_build += form.label :name, 'Name: '
form_build += form.text_field(:name)
form_build += form.label :age, 'Age: '
form_build += form.text_field(:age)
form_build.to_s
end
%>
但是打印的字符串中被封入在HTML注释代码(<!--
-->
)输出。