Отображение столбца в проблеме отношений
Я сделал приложение, чтобы показать столбец из другой таблицы, но не работает
Здесь мои таблицы
|policies|
|id| |num_policy|
|insurances|
|id| |id_policy| |net_insurance|
|insurance_financing|
|id| |id_ensurance| |number|
Это мой контроллер
class PolicyController < ApplicationController
def generate_print
@policies= Policy.find(:all)
end
end
Это моя модель
class Policy < ActiveRecord::Base
has_many :insurances
end
class Insurance < ActiveRecord::Base
belongs_to :policy
has_many :insurance_financing_details
end
class InsuranceFinancingDetail < ActiveRecord::Base
belongs_to :insurance
end
Это мой взгляд
<% @policies.each do |p| %>
<%= p.num_policy %>
<% p.insurances.insurance_financing_details.each do |insurance| %>
<%= insurance.number %>
<% end %>
<% end %>
Это моя ошибка
undefined method `insurance_financing_details'
Это я также попробовал <% p.insurance_financing_details.each do | insurance | %>
undefined method `insurance_financing_details'
Пожалуйста, кто-нибудь может помочь мне с этой проблемой
Я буду очень признателен за помощь
1 ответ
Решение
p.insurances даст вам массив. Следующее должно работать. Но имейте в виду, что, если у вас есть большое количество полисов и страховок, произойдет хит производительности.
<% @policies.each do |p| %>
<%= p.num_policy %>
<% p.insurances.each do |insurance| %>
<% insurance.insurance_financing_details.each do |detail| %>
<%= detail.number %>
<% end %>
<% end %>
<% end %>