嵌套表单不显示字段

时间:2013-02-14 20:51:39

标签: ruby-on-rails

我的nested form基于has_one关系,但它没有显示字段。

我错过了什么?

新动作

  def new
    @doctor = Doctor.new    
    1.times { @doctor.build_schedule }

    respond_to do |format|
      format.html # new.html.erb
      format.json { render json: @doctor }
    end
  end

_form

<%= simple_form_for(@doctor, :html => { class: "form-horizontal"})  do |f| %>

    <%= f.input :name %>

        <%= f.simple_fields_for :schedule do |builder| %>
        <%= render 'days_checkboxes', :f => builder %>

    <%= f.submit %>
<% end %>

模型

class Doctor < ActiveRecord::Base

  has_one :schedule, dependent: :destroy

end

我是否必须在其他操作中设置构建?

1 个答案:

答案 0 :(得分:3)

如果您的模型实例上没有schedule关联对象,则您需要在任何您想要引用它的地方调用build_schedule。如果你没有这样做,表单根本不会呈现,因为它没有显示字段的内容。