What is difference between belongs_to and has_one in Rails?

What is a difference between belongs_to and has_one?

How can I decide belongs_to use to X(assume) model and has_one use to Y(assume) model?

Kind regards.

What is a difference between belongs_to and has_one?

They are at opposite ends of the association. The model that belongs_to is the one that has the Y_id field in the database.

How can I decide belongs_to use to X(assume) model and has_one use to Y(assume) model?

Do you mean how to decide whether X belongs_to Y and Y has_one X versus Y belongs_to X and X has_one Y? If so then it is just a matter of which seems to fit best for you. Of course a third alternative is to simplify the code and the database and combine the models into XY.

Colin

Colin Law wrote in post #1151152: