I have 2 models, namely user and userprofile. There is a one-to-one relationship between user and userprofile.
You define the association wherever you will need it. If at some point you need to say user.userprofile
, then include has_one :userprofile
in User
. Likewise, if you need to say userprofile.user
, then include belongs_to user
in Userprofile
.
In other words, associations are relative. You can specify that model A has_one :b
without specifying that model B belongs_to :a
. You simply define what you need. The same goes for one-to-many and many-to-many associations.
Just be sure to have migrated user_id
to the "userprofiles" table.