0

私が持っているとします:

class Edible
end
class Apple < Edible
end
class Orange < Edible
end

実際のタイプに関係なく、これらの食用物のコレクションをレンダリングしています。

<%= render @edibles %>

apples/appleこれは機能しますが、Rails はこれらのビューをおよびに配置することを望んでいますoranges/orange

Railsに同じフォルダ内のビューを探すように指示する方法はありますedibles/appleedibles/orange?

4

2 に答える 2

1
  def partial
    edible_type.class.name.underscore ##edible type can be apple or orange
  end

<% @edibles.each do |edible| %>
  <%= render( :partial => "edibles/#{edible.partial}", :locals => {:edible => edible}) %>
<% end %>
于 2013-08-26T22:37:14.473 に答える
0

eachを使用せずにコレクションをレンダリングできます。

<%= render partial: "edibles/edible", collection: @edibles, as: :edible %>
于 2015-06-16T09:25:10.863 に答える