You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Rails控制台查看audited生成的审计记录,调用Audit.all报错如何解决

报错原因

你使用的audited-activerecord ~> 4.0版本默认将审计模型封装在了Audited命名空间下,不存在全局的Audit常量,所以直接调用Audit.all会触发未初始化常量错误。

正确查询方法

  • 方法1:使用全限定名查询所有审计记录
    直接在控制台执行以下代码即可:
    Audited::Audit.all
    
  • 方法2:查询单条模型实例的关联审计记录
    如果你要查询某一个MyObject实例的审计记录,可直接调用模型自带的关联方法,不需要写全命名空间:
    # 先获取对应实例
    my_object = MyObject.find(目标实例ID)
    # 直接获取该实例的所有审计记录
    my_object.audits
    
  • 方法3:配置全局Audit常量(可选)
    如果你希望可以直接使用Audit调用模型,可以新增Rails初始化文件配置别名:
    1. 在config/initializers/目录下新建audited.rb文件
    2. 文件中添加如下内容:
      Audit = Audited::Audit
      
    3. 重启Rails控制台/服务后,就可以直接用Audit.all等方法查询审计记录了。

注意事项

如果执行上述操作后提示找不到audits表,请先确认你已经执行了audited的数据库迁移:

rails generate audited:install
rake db:migrate

内容的提问来源于stack exchange,提问作者Dave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 04:15:02