【问题标题】:Rails html.erb filetype, difference between <% %> and <%= %> [duplicate]Rails html.erb 文件类型,<% %> 和 <%= %> 之间的区别 [重复]
【发布时间】:2013-11-30 23:19:52
【问题描述】:

我刚开始研究 Ruby 和 Ruby on Rails,我注意到在 .html.erb 文件中嵌入 Ruby 语法的两个选项:

<% #ruby code here %>

或者:

<%= #ruby code here %>

我应该如何选择一个而不是另一个?

【问题讨论】:

  • &lt;%= %&gt; 会输出结果,&lt;% %&gt; 不会。
  • 谢谢@DaveJohnston。我根据语法搜索了类似的问题,但我没有看到那个帖子。

标签: ruby-on-rails ruby


【解决方案1】:

&lt;%= 输出 Ruby 的结果。 &lt;% 只是评估 Ruby。

<p>Hi! How are you? 1 + 1 = <%= 1 + 1 %></p>

将变为&lt;p&gt;Hi! How are you? 1 + 1 = 2&lt;/p&gt;

<p>Hi! How are you? 1 + 1 = <% 1 + 1 %></p>

将变为&lt;p&gt;Hi! How are you? 1 + 1 = &lt;/p&gt;

&lt;% 一般用于流量控制,例如。 if/else。示例:

<% if model.nil? %>
  <%= render 'new_model_form' %>
<% else %>
  <%= render 'detail_view' %>
<% end %>

阅读更多http://guides.rubyonrails.org/layouts_and_rendering.html

【讨论】:

  • 不错的简洁答案,带有示例。非常感谢。
  • 说得好。它可能只有助于添加
  • @AndyV 好主意!已添加。
【解决方案2】:

【讨论】:

    猜你喜欢
    • 2010-11-03
    • 2014-05-30
    • 2013-08-19
    • 1970-01-01
    • 2011-12-28
    • 1970-01-01
    • 2021-01-26
    • 2013-07-27
    相关资源
    最近更新 更多