有没有人知道一个gem同时软删除数据库中的记录(只是将它们标记为已删除而不是实际删除)和...
...当你在任何类型的查找中自动省略那些已删除的记录而不使用任何特殊的用户定义范围。例如。这一切都发生在宝石中。
干杯!
答案 0 :(得分:7)
这是DHH的版本 - https://gist.github.com/1014971
这是我的bug修复版本 - https://gist.github.com/4032984
答案 1 :(得分:4)
您可能想要结帐paper_trail
答案 2 :(得分:2)
答案 3 :(得分:2)
它基本上是acts_as_paranoid的重写(并使用了许多相同的约定),但更小,更快,并且与Rails 3和4兼容。
它完成了您的两个请求:
在类包含deleted_at
的对象上调用destroy
方法时自动设置acts_as_paranoid
时间戳。
自动为确保deleted_at IS NULL
的所有查询设置条件,除非您在查询链中包含with_deleted
。
无法说出关于图书馆或雷达的好消息。
奖励:他的文档可能是“业务”中最好的。
答案 4 :(得分:0)
我使用“丢弃宝石”。这是用于软删除记录的非常简单的方法。 https://www.rubydoc.info/gems/discard/1.0.0