3
すべて! は私がhas_many association with select
例
は、それが動作するようになりましclass Price < ActiveRecord::Base
self.table_name = "pricelist_prices"
has_many :order_items, :primary_key=> :city_id, :foreign_key=> :city_id
has_many :orders, :through => :order_items
end
必要なカラムだけを選択するために、追加のhas_manyの関係を作成します。しかし、私は同じように動作協会作成したいと思います:注文を、しかし、持っている:選択オプション
例
has_many :orders, :through => :order_items, :select=>"price"
しかし、私は現在上書きしたくない:注文accociationを。 これを行う方法は?
UPD ソースオプション付きの例を示します。 これは大丈夫ですが、インクルードでこのAccotiationを使用すると機能しません。
Price.where(:id=>[12759,12758]).includes(:prices_from_orders)
(Object doesn't support #inspect)
Price.where(:id=>[12759,12758]).includes(:prices_from_orders).first
NoMethodError: undefined method `each' for nil:NilClass
from /Users/igorfedoronchuk/.rvm/gems/[email protected]/gems/activerecord-3.2.1/lib/active_record/associations/preloader/association.rb:88:in `block in associated_records_by_owner'
UPD2
私はまた、PRIMARY_KEY選択を追加し、あなたがこのようなassotioationを使用する場合の方法を含み、問題を認識し、otherway ARは、レコードの所有者が誰であるかを知りません。
has_many :orders, :through => :order_items, :select=>"id, price"
感謝のような何かを行うことができます!できます !しかし、私がそれを使用するとエラーが発生します( 更新された質問 – Fivell