在Rails模型中,我可以将belongs_to更改为has_one并将has_one更改为belongs_to吗?

时间:2010-09-09 20:35:58

标签: ruby-on-rails activerecord model

如果我有两个型号。 Model1属于Model2,Model2 has_one Model1。因此,我可以从Model1访问Model2以及从Model2访问Model1。现在我的问题是,我可以将关系更改为 Model2 belongs_to Model1和Model1 has_one Model2 吗?它还可以让我从Model1遍历Model2,从Model2遍历Model1。我不确定,有人可以解释一下吗?

感谢。

1 个答案:

答案 0 :(得分:2)

你当然可以改变从一个回合到另一个回合的关系。

您显然需要在model_1_id表上添加model_two列,迁移所有现有关联,并删除model_2_id表上的model_one列。

我想不出你需要做的其他事情才能让它发挥作用。当belongs_tohas_one配对时,关联的行为几乎相同。