0

基本上,现在我有一个位置和一个用户,并且关系“跟随”。这两者都是 has_and_belongs_to_many 关系。我已经在数据库中创建了用户和位置,但是当用户决定关注某个位置时,我想将两者连接起来。我该怎么做呢?

我曾想过使用 LocationUser.new(..),其中 LocationUser 是位置和用户表或 Location.create(...) 或其他东西的连接表,但我不觉得其中任何一个在做什么我想要做。

提前非常感谢!

4

2 回答 2

0

您可以使用范围加法(如果您不使用连接模型,则为真正的 habtm):

current_user.locations << @location

或范围创建(如果您有连接模型):

current_user.location_users.create(:location_id => @location)
于 2012-09-30T08:22:46.277 回答
0

连接表不应该有模型,也不能有外键。id: false在 create_table 迁移中设置。

然后,User.locations << Location.new或类似的。

于 2012-09-30T08:02:03.077 回答