gpt4 book ai didi

ruby-on-rails - Cocoon如何去除关联

转载 作者:行者123 更新时间:2023-12-02 10:27:58 26 4
gpt4 key购买 nike

我正在尝试使用 Cocoon gem 在 asset_profiles 上添加/删除assets。到目前为止一切正常,我只是遇到了 link_to_remove_association 的问题。单击该按钮后,该字段将被删除。但如果该字段之前已填写并保存,我无法删除所述关联。该按钮只是隐藏该字段,直到我点击更新。有没有办法通过link_to_remove_association实际从数据库中删除关联?任何帮助深表感谢。提前致谢。

这是我引用的代码:

Assets .显示

= simple_form_for([@asset_profile, @asset]) do |f|
= f.input :max_users, as: :hidden
#assets_users
= f.simple_fields_for :assets_users do |assets_user|
= render "assets_user_fields", f: assets_user
.links
= link_to_add_association "Add Another User", f, :assets_users
= f.submit

Assets ._assets_users_fields

.nested-fields
= f.input :user_id, collection: @users.order(:last_name), :label => "User"
= link_to_remove_association "Remove", f

页面预删除截图: pre-remove删除后的截图: post-remove更新后的屏幕截图(页面重新加载): post-update

我更愿意在更新后重新加载页面并如下所示,这是最初将用户添加到 Assets 的表单: new asset users

最佳答案

使用强参数时,您必须确保允许 :id:_destroy,顺便记录一下(请参阅 documentation )。

这并非不合逻辑:如果需要删除某些内容,cocoon 会设置 _destroy,然后 Rails 需要 id 来知道要删除什么。

关于ruby-on-rails - Cocoon如何去除关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27157188/

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