我有一个 Rails 应用程序,其中包含文章,用户可以将链接和评论添加为嵌套属性。
我在 paper_trail https://github.com/airblade/paper_trail/文档中看到该 gem 未涵盖此内容。我将如何设置撤消功能,以便在用户单击撤消时恢复/更新嵌套属性或 has_many 关联?
我有一个 Rails 应用程序,其中包含文章,用户可以将链接和评论添加为嵌套属性。
我在 paper_trail https://github.com/airblade/paper_trail/文档中看到该 gem 未涵盖此内容。我将如何设置撤消功能,以便在用户单击撤消时恢复/更新嵌套属性或 has_many 关联?
我认为,如果您将“销毁”帖子挂接到撤消按钮,它至少会在它们单击撤消时删除链接。基本上你传递一个带有特殊_destroy
键的哈希,它将删除嵌套的模型记录。
从这里的Rails 3 文档:
class Member < ActiveRecord::Base
has_one :avatar
accepts_nested_attributes_for :avatar, :allow_destroy => true
end
现在,当您将 _destroy 键添加到属性散列时,其值为 true,您将销毁关联的模型:
member.avatar_attributes = { :id => '2', :_destroy => '1' }
member.avatar.marked_for_destruction? # => true
member.save
member.reload.avatar # => nil