我一直在尝试创建一个基本的 Rails 应用程序。我使用 generate 创建了一个基本的脚手架,并在球员和球队之间建立了 belongs_to 关系,所以球员 belongs_to 球队和球队 has_many 球员。
我的表单视图看起来像这样
<%= form_for(@team) do |f| %>
<% if @team.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@team.errors.count, "error") %> prohibited this team from being saved:</h2>
<ul>
<% @team.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :Playerone %><br />
<%= f.collection_select :Playerone, Player.all, :firstname, :firstname %>
</div>
<div class="field">
<%= f.label :Playertwo %><br />
<%= f.collection_select :Playertwo, Player.all, :firstname, :firstname %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
当我尝试创建一个新团队时,我会得到下拉列表,因为我希望它们与球员的名字一起选择,但是当它被保存时,它会保存 0 作为记录。
列出团队
Playerone Playertwo
0 0 显示编辑销毁
新团队
最初我有这样的集合选择
<%= f.collection_select :Playertwo, Player.all, :id, :firstname %>
这会插入 ID,但我希望插入文本。
我已经查看了大量的文档,并且在我仍在学习的过程中获得了王牌。
谢谢你的帮助 :)