作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我也遇到了同样的问题 one
但该解决方案对我没有帮助。这是我的强参数:
def request_params
params.require(:request).permit(:name, :address, :phone, :mobile, :type,
:filled_cartridges_attributes => [:cartridge_name,:client_id,,
:count,:_destroy,:id],
所以我有 :_destroy 和 :id。前面的人忘记将 :id 添加到强参数中。添加一个 id 解决了他的问题。
这是我的请求模型:
has_many :filled_cartridges, inverse_of: :request, dependent: :destroy
accepts_nested_attributes_for :filled_cartridges, :reject_if => :all_blank, allow_destroy: true
这是提交后参数的样子:
request:
...some params....
filled_cartridges_attributes: !ruby/hash:ActionController::Parameters
'0': !ruby/hash:ActionController::Parameters
cartridge_name: HP LaserJet3000
_destroy: 'false'
id: '1'
'2': !ruby/hash:ActionController::Parameters
cartridge_name: new 9
_destroy: '1'
id: '13'
这里应该销毁第二个。但事实并非如此。
最佳答案
您应该在允许的参数上将 :_destroy 和 :id 添加到指定的嵌套属性。
关于ruby-on-rails - _destroy 在 Rails 4 的 Coocon gem 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29817775/
我也遇到了同样的问题 one 但该解决方案对我没有帮助。这是我的强参数: def request_params params.require(:request).permit(:name, :a
我是一名优秀的程序员,十分优秀!