我有一个rails应用程序,其中包含文章,用户可以将链接和评论添加为嵌套属性。
我在paper_trail https://github.com/airblade/paper_trail/文档中看到,这个gem没有涵盖。我如何设置撤消功能,以便在用户单击撤消时恢复/更新嵌套属性或has_many关联?
答案 0 :(得分:0)
我认为如果你将一个“破坏”帖子挂钩到撤消按钮,它将至少删除链接,如果他们点击撤消。基本上,您使用特殊的_destroy
密钥传递哈希,它将删除嵌套的模型记录。
来自Rails 3文档here:
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