在rails belongs_to关联中设置父级

时间:2013-09-21 15:27:57

标签: ruby-on-rails belongs-to

我有两个模型,玩家和团队。玩家属于团队,但是,团队没有很多玩家因为我不关心拥有球队球员的名单。我只进行了关联,以便我可以更新一次球队的场地(例如,它是week_one_opponent)并将其拉到该球队的所有球员身上。

我的问题是,从玩家的新形式或编辑表单中,如何通过向表单提供团队名称来设置玩家的团队?例如。如果球员是'Trent Richardson',他刚刚从布朗队交易到小马队,我希望能够进入他的“编辑”页面并将球队场地从“布朗队”改为“小马队”。

由于

1 个答案:

答案 0 :(得分:2)

试试这个:

<%= form_for @player do |f| %>
<%= f.collection_select :team_id, Team.all, :id, :name, {}, { :multiple => false } %>
<% end %>

这假设您的团队模型中有一个名为name的属性。确保在玩家的模型中添加团队参考。

如果您使用的是Rails 3,则必须将:team_id添加到attr_accessible,如果您使用的是Rails 4,则必须将:team_id添加到用户控制器中的强参数中。