hello.. i am currently trying to use :through to attach two of my models together using geokit. for some reason, i am running into a problem: ArgumentError: Unknown key(s): as i have two models, one that is geocoded, and one that belongs to that model. the models look like: ,----[ employer.rb ] | class Employer < ActiveRecord::Base | acts_as_mappable | before_validation_on_create :geocode_address | | has_many :internships | belongs_to :account | belongs_to :role | | private | def geocode_address | geo=GeoKit::Geocoders::MultiGeocoder.geocode(address1 + " " + city + " " + state + " " + zip) | errors.add(:address, "Could not Geocode address") if !geo.success | self.lat, self.lng = geo.lat,geo.lng if geo.success | end | | end `---- and an internship: ,----[ internship.rb ] | class Internship < ActiveRecord::Base | has_many :internship_categories | belongs_to :employer, :polymorphic => true | acts_as_mappable :through => :employer | end `---- it seems like there is an intermediary object in the docuements called '':locatable'' that connects the the two together, but i just can''t get how that is being called, or what i am supposed to do with it. no matter where i put it, i end up with this error: ArgumentError: Unknown key(s): as if i remove: ":as => :locatable" i end up with a problem in that the model doesn''t have :lat or :lng, which makes me think that the :through is not working at all. please let me know how to attack this.. thanks! -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
I think your trouble here is with the polymorphic association. (Why do you need it - is there another model that has_one or has_many :internships :as => :employer?) Try either removing :polymorphic => true if you don''t need it, or adding :as => :employer to the Employer''s has_many :internships line. http://wiki.rubyonrails.org/rails/pages/UnderstandingPolymorphicAssociations On Sun, Feb 22, 2009 at 11:12 PM, Sergio Ruiz <rails-mailing-list-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> i am currently trying to use :through to attach two of my models > together using geokit. for some reason, i am running into a problem: > > ArgumentError: Unknown key(s): as > > i have two models, one that is geocoded, and one that belongs to that > model. the models look like: > > ,----[ employer.rb ] > | class Employer < ActiveRecord::Base > | acts_as_mappable > | before_validation_on_create :geocode_address > | > | has_many :internships > | belongs_to :account > | belongs_to :role > | > | private > | def geocode_address > | geo=GeoKit::Geocoders::MultiGeocoder.geocode(address1 + " " + city + " " + state + " " + zip) > | errors.add(:address, "Could not Geocode address") if !geo.success > | self.lat, self.lng = geo.lat,geo.lng if geo.success > | end > | > | end > `---- > > and an internship: > > ,----[ internship.rb ] > | class Internship < ActiveRecord::Base > | has_many :internship_categories > | belongs_to :employer, :polymorphic => true > | acts_as_mappable :through => :employer > | end > `---- > > it seems like there is an intermediary object in the docuements called > '':locatable'' that connects the the two together, but i just can''t get > how that is being called, or what i am supposed to do with it. > > no matter where i put it, i end up with this error: > > ArgumentError: Unknown key(s): as > > if i remove: ":as => :locatable" i end up with a problem in that the > model doesn''t have :lat or :lng, which makes me think that > the :through is not working at all. > > please let me know how to attack this.. > > thanks! > ----~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
thanks for your help! i am gonna have to look into this a little bit more to get my head around this.. thanks! -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---