每个公司都应该有一个 CompanyContact。我的公司表单包含公司联系人字段。当我更新公司并添加新的公司联系人时,它工作正常,因为在公司的显示页面中,它确实显示了新的公司联系人。但是,当我单击将我带到编辑页面的编辑链接时(注意:我什至还没有单击更新按钮),在公司联系人应该是空白的编辑公司表单中。所以我检查了日志,公司联系人被删除了。
DELETE FROM "company_contacts" WHERE "company_contacts"."id" = ? [["id", 4]]
我很困惑,因为我没有调用任何删除操作。
----------------------------------------
company.rb
has_one :company_contact, :dependent => :destroy
accepts_nested_attributes_for :company_contact
----------------------------------------
company_contact.rb
belongs_to :company
----------------------------------------
companies_controller.rb
def new
@company = Company.new
company_contact = @company.build_company_contact
respond_to do |format|
format.html # new.html.erb
format.json { render json: @company }
end
end
def edit
@company = Company.find(params[:id])
company_contact = @company.build_company_contact
end