【问题标题】:Rails_admin and paranoiaRails_admin 和偏执狂
【发布时间】:2016-02-11 21:52:57
【问题描述】:

当我删除某些东西时,有没有办法管理paranoia 产生的“软删除”记录?我的意思是我在rails_admin 或rails 控制台中删除的任何记录实际上都没有被删除,而是偏执狂用deleted_at 时间戳标记它们,这使它们超出了视图范围。

我希望能够看到这些已删除的记录,以便进行审计、潜在恢复或真正永久删除它们。

我有一个基本的 rails_admin 和 paranoia 安装,没什么特别的。

另外,this previously asked question 也无济于事。

【问题讨论】:

    标签: ruby-on-rails ruby rails-admin ruby-paranoia


    【解决方案1】:
    list do
      scopes [nil, :only_deleted]
    end
    

    nil,只是意味着没有范围,或者我应该说是原始范围。查看rails_admin's Wiki的更多详情

    记住偏执狂,只需添加一个默认范围,因此默认情况下隐藏记录,但 unscoped 或提供的范围之一应该显示它们。

    【讨论】:

    • 您是在建议将该范围放在我的用户模型中?
    • 不,偏执狂,已经为你准备好了。这是应该进入的代码,例如,您的 users.rb。你在哪里有ActiveAdmin.register User do ...
    • 我猜我们断开了连接,我使用的是 rails_admin,而不是 active_admin
    • 真的很抱歉,是我分心了。查看更新的答案。
    • 太棒了!现在我只需要弄清楚恢复或真正删除用户的自定义操作
    【解决方案2】:

    要恢复软删除的用户,您需要创建 RailsAdmin 自定义操作。这是一个相关的帖子RailsAdmin custom action to restore soft deleted records

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-12
      相关资源
      最近更新 更多