0

我不知道如何通过名为 player_rosters 的 HABTM 关系在玩家和名册之间创建关系,但在我的控制台中,我如何使用属性创建两者之间的关系。

Players_rosters 由 roster_id 和 player_id 组成。这种关系有效,但我如何创建与手动属性的关联。

r = Roster.find(1)

r.create(:player_id => 1)

这不起作用,但我怎么能这样做?

4

1 回答 1

4

假设你正在寻找花名册:

r = Roster.find(1)
player = r.players.create(:name => 'Joe')

使用您设置玩家ID的示例:

r.players.create(:id => 22, :name => 'Joe')

找到第一个玩家并将他们添加到 id 为 22 的名单中:

# Then you can assign as follows:
player = Player.first
roster = Roster.find(22)
player.rosters << roster

或者,要将玩家分配到一个名单:

player = Player.first
player.rosters = [Roster.find(22)]
player.save

save可能没有必要。我不记得分配是否会触发保存,例如附加到关联。

于 2013-11-01T23:52:48.277 回答