Rails - simple_form,在new和edit中包含一个名为空白对象的集合

bdx*_*bdx 25 ruby-on-rails simple-form

我有一个simple_form,我试图在其中包含一个空白项,因为该字段中的'nil'值在此数据库中具有特殊含义.为了使最终用户更加明显,我还想用"(如果没有则选择)"这样的内容来标题.

我目前正在这样做,但它只在创建新对象时插入"空白"项目,而不是在编辑新对象时插入.

# _child_form.html.erb

<%= simple_form_for @child do |f| %>
  <%= f.input :first_name %>
  <%= f.input :last_name %>
  <%= f.association :parent, :collection => @parents, :prompt => "(select if none)" %>

  <%= f.button.submit %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

.

# child_controller.rb

def new
  @child = Child.new
  @parents = Parent.all
end

def edit
  @child = Child.find(params[:id])
  @parents = Parent.all
end
Run Code Online (Sandbox Code Playgroud)

dee*_*our 57

你想要使用:include_blank,而不是:prompt

<%= f.association :parent, :collection => @parents, :include_blank => "(select if none)" %>
Run Code Online (Sandbox Code Playgroud)

文档