代码之家  ›  专栏  ›  技术社区  ›  jackerman09

在rails belongs_to关联中设置父项

  •  0
  • jackerman09  · 技术社区  · 12 年前

    我有两种型号,Player和Team。球员属于球队,然而,球队没有很多球员,因为我不关心球队球员的名单。我创建关联只是为了更新一支球队的字段一次(例如,这是一周的对手),并将其拉到该球队的所有球员身上。

    我的问题是,从玩家的新表单或编辑表单中,我如何通过在表单中提供团队名称来设置玩家的团队?例如,如果球员是“特伦特·理查森”,他刚刚从布朗队交易到小马队,我希望能够转到他的“编辑”页面,将球队场地从“布朗队”更改为“小马队”。

    谢谢

    1 回复  |  直到 12 年前
        1
  •  2
  •   miler350    12 年前

    试试这个:

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

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

    如果您使用的是Rails3,则必须添加 :team_id attr_accessible ,如果您使用的是Rails 4,则必须添加 :团队id 用户控制器中的强参数。