Hi all, I am having trouble trying to use reflect_on_association
method with given the simplified model:
class Order < ActiveRecord::Base
belongs_to :contractor, :class_name => “BusinessUnit”
end
I expected the reflect_on_association method to return
associated_foreign_key “contractor_id” but it returns
“business_unit_id”:
ruby-1.9.2-p0 >
Order.reflect_on_association(:contractor).association_foreign_key
=> “business_unit_id”
do I miss something?
Bojan M. wrote:
Hi all, I am having trouble trying to use reflect_on_association
method with given the simplified model:
class Order < ActiveRecord::Base
belongs_to :contractor, :class_name => “BusinessUnit”
end
I expected the reflect_on_association method to return
associated_foreign_key “contractor_id” but it returns
“business_unit_id”:
ruby-1.9.2-p0 >
Order.reflect_on_association(:contractor).association_foreign_key
=> “business_unit_id”
do I miss something?
What version of Rails are you using? At least in the 2.2.2 docs I’m
looking at right now, :association_foreign_key isn’t a valid option for
belongs_to (it’s only for habtm), so I’m not surprised that you’re
getting strange results. Try foreign_key.
Best,
Marnen Laibow-Koser
http://www.marnen.org
[email protected]
On Oct 6, 9:17 pm, Marnen Laibow-Koser [email protected] wrote:
“business_unit_id”:
getting strange results. Try foreign_key.
Best,
Marnen Laibow-Koserhttp://www.marnen.org
[email protected]
–
Posted viahttp://www.ruby-forum.com/.
I found it, should use primary_key_name:
ruby-1.9.2-p0 >
Order.reflect_on_association(:contractor).primary_key_name
=> “contractor_id”
I thought at first that I would get it with foreign_key but it that
method doesnt exists in
ActiveRecord::Reflection::AssociationReflection