目前我有三个模型:
Songs have many Setlists through Allocations
Setlists have many Songs through Allocations
Allocations belong to Setlists and belong to Songs
我现在的表格如下:
<%=f.label :date, "Set a date" %>
<%=f.date_select :date%>
<div>
<%= render 'song' %>
</div>
<%=f.submit "Create Setlist", class: "btn btn-large btn-primary" %>
上面给出的歌曲部分是:
<div id="songSelection">
<table class= "table table-striped table-bordered">
<thead>
<th>Title</th>
<th>Artist</th>
<th>Add to Set</th>
</thead>
<tbody>
<% @songs.each do |song| %>
<tr>
<%= nested_form_for(@setlist.allocations.build(song_id: song.id)) do |builder| %>
<td><%= song.title %></td>
<td><%= song.artist %></td>
<td>
<%= builder.submit "Add Song", class: "btn btn-small btn-primary" %>
<% end %>
</td>
</tr>
<% end %>
</tbody>
</table>
</div>
基本上我正在尝试通过分配将歌曲分配给曲目。目前它指出歌曲部分中的 f 没有定义。如果我摆脱它,则页面呈现正常但无法正常运行(即,每当我单击按钮添加歌曲时,它会重定向它会将更改保存到设置列表日期但不分配任何新分配)。任何帮助将非常感激。我意识到我可能错过了一些信息,因为我对此有些陌生,所以如果需要任何其他详细信息,请询问。
我试过使用 Ryan Bates 的嵌套表单 gem,但我无法让它工作。我认为这是因为它在尝试构建它时没有为分配分配歌曲 ID,但不确定我将它放在哪里/如何放入。