RecordTagHelper
1.content_tag_for
为我们的Active Record Object渲染在一个容器里面
例如, 为我们的Post类的实例@post渲染:
<%= content_tag_for(:tr, @post) do %>
<td><%= @post.title %></td>
<% end %>
渲染结果如下:
<tr id="post_1234" class="post">
<td>Hello World!</td>
</tr>
我们也可以设置一些其他的HTML属性选项,例如:
<%= content_tag_for(:tr, @post, class: "frontpage") do %>
<td><%= @post.title %></td>
<% end %>
结果:
<tr id="post_1234" class="post frontpage">
<td>Hello World!</td>
</tr>
当然我们也可以为该方法传递一个集合:
<%= content_tag_for(:tr, @posts) do |post| %>
<td><%= post.title %></td>
<% end %>
结果:
<tr id="post_1234" class="post">
<td>Hello World!</td>
</tr>
<tr id="post_1235" class="post">
<td>Ruby on Rails Rocks!</td>
</tr>
2.div_for
<%= div_for(@post, class: "frontpage") do %>
<td><%= @post.title %></td>
<% end %>
结果:
<div id="post_1234" class="post frontpage">
<td>Hello World!</td>
</div>
AssetTagHelper
该标签主要用户处理public目录下面的文件,我们可以在config/environments/production.rb
中设置config.action_controller.asset_host
,例如:
config.action_controller.asset_host = "assets.example.com"
当我们在视图文件中使用该标签时:
<%= image_tag("rails.png") %>
结果:
<img src="http://assets.example.com/images/rails.png" alt="Rails" />