皆さんこんにちは。
ビュー内の異なるテーブルから 2 つの列 (amount_ensure と vehicle_Value) を合計しようとしています
TABLES
|POLICIES|
|id| |amount_ensure|
|POLICY_VEHICLES|
|id| |policy_id|
|VEHICLES|
|Id| |vehicle_value|
これが私のコントローラーです
def view_policy
@obj_policy = Policy.find(params[:id])
end
これが私のモデルです
class Policy < ActiveRecord::Base
has_many :policy_vehicles
has_many :vehicles, :through => :policy_vehicles
end
class PolicyVehicle < ActiveRecord::Base
belongs_to :vehicle
belongs_to :policy
end
class Vehicle < ActiveRecord::Base
belongs_to :policy
has_many :policy_vehicles
has_many :policies, :through => :policy_vehicles
end
私の部分的なビューで @obj_policy.vehicle が空の場合、amount_ensure のみを表示しますが、値がある場合は SUM を実行します (ただし、部分的なビューからの配列です)
<% if @obj_policy.vehicles.empty? %>
Sum:
<%= @obj_policy.amount_ensure %>
<% else %>
Sum:
<%= @obj_policy.amount_ensure + @obj_policy.vehicles.vehicle_value.to_i %>
<% end %>
<%= render :partial=>"vehicles" %>
私の部分的な見方
<% @obj_policy.vehicles.each do |vehicle| %>
<%= vehicle.vehicle_value %>
<% end %>
この問題を解決するにはどうすればよいですか?
助けていただければ幸いです。