On 8 Mar 2009, at 15:11, Ruby Newbie wrote:
> > > I have 4 models : > > class Country < ActiveRecord::Base > has_many :cities > has_many :streets > has_many :houses > end > > class City < ActiveRecord::Base > belongs_to :country > has_many :streets > has_many :houses > end > > class Street < ActiveRecord::Base > belongs_to :country > belongs_to :cities > has_many :houses > end > > class House < ActiveRecord::Base > belongs_to :country > belongs_to :cities > belongs_to :streets > end First off, watch those belongs_to - they should be singluar, ie belongs_to :street. > > > Now...if i want to create a house like this: > > @street = Street.find(1) > @house = @street.houses.new > @house.name = "Burlington house" > @house.save > > Now...only the street_id key is set in the house record...But not > city_id and country_id... > Is there an ORM way to let active record do the job ? > No. activerecord assumes the simple case ie that the has_many/ belongs_to relationship between street and house is all that it needs (and why do you need to duplicate data between street and house ? surely the country and city of the house is implicit from the street ?) Fred > 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 [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

