gpt4 book ai didi

ruby-on-rails - Rails 3. 为什么进入编辑页面时我的嵌套记录被删除了?

转载 作者:太空宇宙 更新时间:2023-11-03 18:26:51 25 4
gpt4 key购买 nike

每家公司都应该有一个 CompanyContact。我的公司表单包含公司联系人字段。当我更新公司并添加新的公司联系人时,它工作正常,因为在公司的显示页面中,它确实显示了新的公司联系人。但是当我单击将我带到编辑页面的编辑链接时(注意:我什至没有单击更新按钮),在编辑公司表单中,companycontact 应该是空白的。所以我检查了日志,公司联系人已被删除。

从“company_contacts”中删除“company_contacts”。“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

最佳答案

在您的编辑操作中,您正在为您的公司建立一个公司联系人,但您的公司只有一个公司联系人。在构建新的之前检查是否存在:

company_contact = @company.company_contact || @company.build_company_contact

关于ruby-on-rails - Rails 3. 为什么进入编辑页面时我的嵌套记录被删除了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9622715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com