You only need a join table if you are creating a many to many relationship.
Ruby on rails has many.
Ruby on rails has been popularizing both concepts along with a variety of other controversial points since the beginning.
The has many through and the has and belongs to many.
To learn more about why rails is so different from many other web application frameworks and paradigms examine the rails doctrine.
Rails tip i am using the shortened version of the rails generate command which is simply rails g.
If this is correct you don t need a join table.
Ruby on rails 3 2 is the last series of releases that support ruby 1 8 7.
The first step to implementing a has many through association is to run the rails generator to create the model and the migration files.
Working with associations was the most difficult part of building central perk my ruby on rails application.
Has many through and has and belongs to many relationships function through a join table which is an intermediate table that represents the relationship between other tables unlike a join query data is actually stored in a table.
Given you have customer has one parent in your model it looks like you are trying to create a one to many relationship.
Specifies a one to one association with another class.
Has many and belongs to relationships made sense but the addition to many to many has many through relationships are where it got weird i ran into several issues while building my app and here s how i solved them.
Ruby on rails 3 0 has been designed to work with ruby 1 8 7 ruby 1 9 2 and jruby 1 5 2.
This method should only be used if this class contains the foreign key.
With has many through associations this option is ignored at least in versions up to 2 1 0 so even if you set dependent option to destroy your join objects will be deleted not firing any callbacks you have set on destroy events.
See also activerecord associations classmethods s overview on when to use has one and when to use belongs to.
Keep up to date with rails on twitter and this week in rails.
For example consider a medical practice where patients make appointments to see physicians.
We will use the entity.
If the other class contains the foreign key then you should use has one instead.
2 4 the has many through association.
This association indicates that the declaring model can be matched with zero or more instances of another model by proceeding through a third model.
To do this as a one to many remove the parentalrelation model and table and update your customer class to something like this.
Earlier versions are not supported.