yas*_*sen 1 html ruby-on-rails erb
有人能告诉我erb中的<%= %>和<% %>标签有什么区别吗?在哪种情况下我应该使用哪一个?我可以使用哪些其他标签以及它们的含义是什么?
如上所述
<% %>
Run Code Online (Sandbox Code Playgroud)
将内部的ruby代码并进行评估
<%= %>
Run Code Online (Sandbox Code Playgroud)
将内部的ruby代码进行评估并在屏幕上打印结果,这通常意味着将返回一个可打印的结果,可以在html中用作普通文本
这样做
<div class="<% 'myclass' %>">
Run Code Online (Sandbox Code Playgroud)
会导致
<div class="">
Run Code Online (Sandbox Code Playgroud)
并且<div class="<%= 'myclass' %>">
会导致
<div class="myclass">
Run Code Online (Sandbox Code Playgroud)
你可以看到这个railscast进一步解释它 http://railscasts.com/episodes/100-5-view-tips
此外,你可能会在将来遇到这个,甚至忘记我写了这个,但无论如何它可能是有用的
在某些情况下,并非每行ruby代码都应该是<%%>的一行.例如 - 使用案例开关
这不起作用:
<% case my_var %>
<% when 10 %>
<% some ruby code %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
但这会
<% case my_var
when 10 %>
<% some ruby code %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
所以要小心
| 归档时间: |
|
| 查看次数: |
112 次 |
| 最近记录: |