代码之家  ›  专栏  ›  技术社区  ›  Thierry Lam

在Rails中,是否有一种简单的方法可以检查ActiveRecord的属性?

  •  0
  • Thierry Lam  · 技术社区  · 15 年前

    我知道我可以通过Rails控制台检查ActiveRecord,但它在一行中显示了整个输出。如果表有许多列,则查找特定属性可能是一个问题。

    >> Story
    => Story(id: integer, name: string, link: string, created_at: datetime, updated_at: datetime)
    

    我喜欢在创建迁移文件中显示属性的方式,但是如果我有许多迁移文件,那么跟踪我想要的文件可能有点困难。

    在Django中,我可以直接转到models.py并检查我想要的任何模型的属性。Rails开发人员如何进行这种查找?

    4 回复  |  直到 15 年前
        1
  •  3
  •   August Lilleaas    15 年前

    config/schema.rb 有DB模式,换句话说,还有所有的属性。我只是打开文件,搜索一个帖子模型的“帖子”,等等。

        2
  •  2
  •   Jared    15 年前

    另一种方法是使用注释模型插件/gem。它将在模型文件的顶部添加注释。

    示例(来自自述文件):

      Schema as of Sun Feb 26 21:58:32 CST 2006 (schema version 7)
      #
      #  id                  :integer(11)   not null
      #  quantity            :integer(11)   
      #  product_id          :integer(11)   
      #  unit_price          :float         
      #  order_id            :integer(11)   
      #
    
        3
  •  0
  •   Omar Qureshi    15 年前

    我通常只是从数据库外壳描述表。

        4
  •  0
  •   junky    12 年前

    从Rails控制台( rails/console 从项目根目录)

    Story.columns_hash.each {|k,v| puts "#{k} => #{v.type}"}
    

    将输出:

    id => integer
    name => string
    link => string
    ...
    etc