我有一个Rails 3应用程序,其中有一个令我恼火的视图。该视图基本上是四个选项卡。每个选项卡都显示一个过滤的记录列表,如下所示:
标签一
<% @faults.each do |fault| %>
<%= fault.name %>
<% end %>
标签二
<% @faults_pending.each do |fault| %>
<%= fault.name %>
<% end %>
标签三
<% @faults_closed.each do |fault| %>
<%= fault.name %>
<% end %>
显然,我错过了很多代码。为了显着整理视图,我考虑为每个标签制作一个部分,但是,除了<% @faults.each do |fault| %>
行之外,每个部分都是相同的。
有没有办法让一个部分和某种方式渲染部分集合的范围(或方法,我永远不会记住它的名称)。
答案 0 :(得分:1)
我认为你正在寻找渲染的:本地选项。
标签一
<%= render :partial => "faults", :locals => { :faults => @faults } %>
Tab tab
<%= render :partial => "faults", :locals => { :faults => @faults_pending } %>
Tab 3
<%= render :partial => "faults", :locals => { :faults => @faults_closed } %>
部分
<% faults.each do |fault| %>
<%= fault.name %>
<% end %>