2013-10-16 41 views
0

我做了一個應用程序來顯示從另一個表中的列,但不工作顯示在關係問題,從表中的信息

這裏我表

|policies| 
|id| |num_policy| 

|insurances| 
|id| |id_policy| |net_insurance| 

這是我的控制器

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 |policy| %> 
    <%= policy.num_policy %> 
    <%= policy.insurance.net_insurance %> 
<% end %> 

這裏是我的錯誤

undefined method `insurance' 

我也嘗試<%= policy.insurances.net_insurance%>

undefined method `net_insurance' 

請有人可以幫我這個問題

我真的很感激幫助

回答

1

每個Policy很多保險,即他們的陣列。爲了得到第一個的net_insurance

<% @policies.each do |policy| %> 
    <%= policy.insurances.first.net_insurance %> 
<% end %> 

要打印所有:

<% @policies.each do |policy| %> 
    <% policy.insurances.each |insurance| %> 
    <%= insurance.net_insurance %> 
    <% end %> 
<% end %> 
+0

感謝它爲我工作。 :) –