0

我认为这个很简单……但我不明白。我在两个模型(组合和 canvas_price)之间有一个 has_many-relationship:

组合.rb:

class Combination < ActiveRecord::Base
  has_many :canvas_prices, :dependent => :delete_all

  accepts_nested_attributes_for :canvas_prices,
                                :allow_destroy => true,
                                :reject_if => lambda { |a| a[:name].blank? }
end

canvas_price.rb:

class CanvasPrice < ActiveRecord::Base
    belongs_to :combination
end

在我的表单中,我有通过 JavaScript 删除嵌套 CanvasPrice 表单中的输入的链接。

我的问题是,当我删除这些字段中的一个或多个并更新组合时,关联的 CanvasPrices 不会被删除,尽管我要删除的 CanvasPrices 不在我的参数中。我如何实现这一目标?

4

1 回答 1

0

好的,很简单……就像在隐藏输入的帮助下添加_delete-param 一样简单,例如combination[canvas_prices][0][_delete] = true。

我认为可以直接在 has_many 或 accept_nested_attributes_for 方法中配置此行为。

于 2012-10-13T11:27:50.640 回答