Rails多选框多对多关系

时间:2014-01-31 03:35:46

标签: ruby-on-rails ruby-on-rails-4

我在表格HTML multiple select box中添加了一个像这样的多选框。

我有一个User对象和一个Personality对象。用户可以具有0个或更多个性,并且个性可以“属于”0个或更多个用户。对于这种多对多关系,我创建了第三个模型UserPersonality来存储用户和个性的ID。

我的用户和个性模型具有相应的has_many through指示。我的问题是,如何让帮助者通过选择框添加与UserPersonality表的关联,如左边提供的链接? 如果用户将右侧选择框中的个性添加到左侧框中,我想添加一条记录,例如:

UserId  PersonalityId
1         3

将用户与所选的人格联系起来。

感谢。

1 个答案:

答案 0 :(得分:0)

使用has_and_belongs_to_many关联与has_many through

解决问题更容易

这是因为我只使用连接表作为ID,并且我可以简单地使用此关联

u=User.find(1)
p=Personality.find(1)
u.personalities << p

要关联它们并填充联合表:users_personalities