首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cocoon与has_one协会

Cocoon与has_one协会
EN

Stack Overflow用户
提问于 2014-09-16 22:06:10
回答 1查看 1.1K关注 0票数 4

我已经在堆栈溢出和谷歌上搜索过了,但都没有用。

我有个叫has_one next_of_kin的人

我可以创建一个具有嵌套表单(带有cocoon)的person,它可以完美地保存。出于某种原因,当我转到编辑页面时,它会删除相关的next_of_kin记录。它呈现用记录的数据填充的字段,但数据库中的实际记录被删除。

我的表单

代码语言:javascript
复制
.full-width-row
  = simple_form_for @person, url: {action: action}, wrapper: 'two_column_form' do |f|
    .columns.medium-4
      h4 = heading
    .columns.medium-8
      = f.button :submit, 'Save', class: 'right button tiny radius'

    .columns.medium-12
      .row
        .medium-8.columns
          = f.input :first_name
          = f.input :last_name
          = f.input :email
          br

          h6 Next of Kin
          br
          = f.simple_fields_for :next_of_kin do |nok|
            = render 'next_of_kin_fields', f: nok
          .link
            = link_to_add_association "Add Next of Kin", f, :next_of_kin, class: 'button secondary tiny next_of_kin_button'
          hr

我的_next_of_kin_fields部分

代码语言:javascript
复制
.nested-fields
  = f.input :first_name
  = f.input :last_name
  = f.input :relationship, as: :select, collection: NextOfKin::RELATIONSHIP
  = f.input :telephone
  = link_to_remove_association "Remove next of kin", f, class: 'remove-association button tiny alert'

我的Person模型:

代码语言:javascript
复制
class Person < ActiveRecord::Base
  has_one :next_of_kin, dependent: :destroy
  accepts_nested_attributes_for :next_of_kin, allow_destroy: true
end

我的Next_of_kin模型:

代码语言:javascript
复制
class NextOfKin < ActiveRecord::Base
  belongs_to :person
  RELATIONSHIP = [ "Mother", "Father", "Brother", "Sister", "Aunt", "Uncle", "Spouse", "Other"]
end

当我访问编辑页面时,如何阻止它删除next_of_kin记录?

EN

回答 1

Stack Overflow用户

发布于 2015-01-29 04:15:04

link_to_add_association中的force_non_association_create设置为true以避免这种情况

代码语言:javascript
复制
= link_to_add_association "Add Next of Kin", f, :next_of_kin, force_non_association_create: true, class: 'button secondary tiny next_of_kin_button'

Cocoon关于此参数的文档:https://github.com/nathanvda/cocoon#force_non_association_create

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25870978

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档