Ruby on Rails语法<%vs<%=

时间:2013-12-19 23:41:41

标签: ruby-on-rails ruby erb

我是ruby和rails的新手。我所遵循的教程没有解释<%和<%= tag之间的区别。例如:

<% @statuses.each do |status| %>
  <tr>
    <td><%= status.name %></td>
    <td><%= status.content %></td>
    <td><%= link_to 'Show', status %></td>
    <td><%= link_to 'Edit', edit_status_path(status) %></td>
    <td><%= link_to 'Destroy', status, method: :delete, data: { confirm: 'Are you sure?' } %></td>
  </tr>
 <% end %>

循环打开时只有&lt;%,其中标签以&lt;%=开启。

那有什么区别?

由于

1 个答案:

答案 0 :(得分:6)

<% %><%= %>都执行Ruby代码。

<% %>将执行Ruby代码,但不会将返回值呈现为html。 <%= %>将执行Ruby代码,并将返回值呈现为html。