Rails 3:如何在视图中显示多对多连接?
在我看来,我试图为每次“旅行”显示所有“腿”。
理想情况下,它们看起来像这样:
-Trip1.name - Leg1.name - Leg2.name - Leg3.name -Trip2.name - Leg4.name - Leg5.name - Leg6.name
这些模型是多对多的。 我有三张桌腿,Trips和Legs_trips。 模型看起来像这样:
Trip.rb
class Trip :all_blank end
Leg.rb
class Leg < ActiveRecord::Base has_and_belongs_to_many :trips validates_uniqueness_of :name accepts_nested_attributes_for :trips end
目前控制器中只有这个:
def index @trips = Trip.all @legs = Leg.all respond_to do |format| format.html # index.html.erb format.json { render json: @trips } end end
任何关于如何构建我的视图的建议都会很棒! 我已经修了好几年但似乎无法靠近或在网上找到任何东西。
提前致谢!
詹姆士
尝试
<% @trips.each do |trip| %> - <%= trip.name %> <% trip.legs.each do |leg| %>
- <%= leg.name %>
<% end %>
<% end %>
在您的视图中应用它们如下:
<% @trips.each do |trip| %> - <%= tri.name %>
<% @trips.legs.each do |leg_in_trip| %> - <%= leg_in_trip.name %>
<% end %>
<% end %>