【问题标题】:Rails 3 DRY partials?Rails 3 DRY 部分?
【发布时间】:2013-02-10 21:13:58
【问题描述】:

我有一个 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 %>

显然我错过了更多代码。为了显着整理视图,我考虑为每个选项卡制作一个部分,但是,除了 &lt;% @faults.each do |fault| %&gt; 行之外,每个部分都是相同的。

有没有办法让一个部分在渲染部分时以某种方式设置范围(或方法,我永远不记得它叫什么)。

【问题讨论】:

    标签: ruby-on-rails-3 controller scope partial


    【解决方案1】:

    我认为您正在寻找渲染的 :locals 选项。

    标签一

    <%= render :partial => "faults", :locals => { :faults => @faults } %>
    

    标签二

    <%= render :partial => "faults", :locals => { :faults => @faults_pending } %>
    

    标签三

    <%= render :partial => "faults", :locals => { :faults => @faults_closed } %>
    

    部分

    <% faults.each do |fault| %>
      <%= fault.name %>
    <% end %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-28
      • 1970-01-01
      • 1970-01-01
      • 2011-12-13
      • 2012-10-16
      • 1970-01-01
      • 2023-03-11
      相关资源
      最近更新 更多