Rails 3编辑加入表格属性
问题描述:
在我的应用程序中,我有一个Athlete
,它有很多sports
。我正尝试构建编辑帐户部分,用户可以在其中编辑他们所播放的运动,但被卡住了。Rails 3编辑加入表格属性
我有一个加入表UserSport
,它的字段为athlete_id, sport_id, primary
。这是我的观点:
<% @athlete.user_sports.each do |user_sport| %>
<% if user_sport.primary? %>
<div class="row">
<label>Primary Sport:</label>
<%= f.semantic_fields_for :user_sports do |builder| %>
<%= builder.select :sport_id, Sport.all.collect { |sp| [sp.name, sp.id] }, { include_blank: "Choose One", selected: user_sport.sport_id }, { class: "chosen field autosave primary-sport-select", :"data-form-selector" => "#athlete-form", id: "primary-sport-select" } %>
<% end %>
<div class="cl"> </div>
</div>
<% else %>
<div class="row">
<% if @athlete.user_sports.many? %>
<label>More Sports</label>
<% else %>
<% end %>
</div>
<% end %>
<% end %>
我不知道如何让这个用户可以改变他们的主要运动
答
- 列表中@athlete行插入表中。
- 给每行一个链接到
edit_athlete_path(@athlete)
- 让你
Athlete
形式包括场(个),他们玩什么运动 - 如果你从的任何数据写入到
UserSport
表编辑链接Athlete
表单,您需要通过您的模型中的attr_accessible
命令授权。在这种情况下,你会想要去观看railscast视频约nested models in forms
的新体育的添加工作...它真的编辑了当前存在的那些,主要是编辑运动员的主要运动 – dennismonsewicz 2013-05-07 20:15:05
如此,在编辑表格的控制器中,对于他们列出的每项运动,显示一个字段。此外,这些领域的每一个领域都应该有一个单选按钮连接到世界各地,说明哪一个是主要的。 – Kristian 2013-05-07 20:42:16