我目前有一个嵌套表单,其中包含用于分配歌曲的选择框。
我的模型是通过分配模型,歌曲有许多设置列表,反之亦然。 Setlists接受分配的嵌套属性。
我的表格如下:
<div>
<%=nested_form_for @allocation do|builder|%>
<%=builder.label :song_id, "Pick a song" %>
<%= builder.hidden_field :setlist_id, value: @setlist.id %>
<%= builder.select(:song_id, options_for_select(@selections),
{include_blank: true}, html:{multiple: true, size: 7}) %>
<%=builder.submit "Add Song", class: "btn btn-large btn-primary" %>
<% end %>
</div>
我想拥有它,以便在选择空白提示时拒绝创建分配。我试过了:
:reject_if => lambda { |a| a[:song_id].blank? }
但由于嵌套属性无效,因此不允许表单提交。我认为reject_if的意思是它会默默地忽略它?