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

升级至Rails 7后Active Record对象仅显示ID属性问题咨询

Rails 7控制台Active Record对象仅显示id的解决方法

Rails 7默认调整了Active Record对象的inspect输出行为,默认只展示主键字段(通常是id),以此避免加载不必要的属性、提升性能,尤其是包含大字段的模型场景。

要恢复Rails 6的显示效果,有几种方式:

  • 全局生效:在config/application.rb中添加配置:

    config.active_record.inspect_all_columns = true
    

    重启控制台后,所有模型对象执行inspect时都会显示全部属性。

  • 单个模型生效:在目标模型类中设置:

    class MyFancyModel < ApplicationRecord
      self.inspect_all_columns = true
    end
    

    仅该模型会在控制台显示全部属性。

  • 临时查看:不想修改配置的话,除了调用.attributes,还可以用:

    # 临时让当前对象inspect显示所有属性
    MyFancyModel.last.inspect(include_all_columns: true)
    # 或者用pp格式化输出所有属性
    pp MyFancyModel.last.attributes
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 17:52:02