【问题标题】:List all Mongoid models in Rails console在 Rails 控制台中列出所有 Mongoid 模型
【发布时间】:2016-08-21 20:20:03
【问题描述】:

我想列出在我的 mongodb 数据库中具有相应集合的所有模型?我正在为 MongoDB 使用 mongoid gem。

我会尝试这样的事情

ActiveRecord::Base.send :subclasses 效果很好,但我没有使用 ActiveRecord。

【问题讨论】:

    标签: ruby-on-rails ruby mongodb mongoid rails-console


    【解决方案1】:

    Mongoid::Config#models:

    获取应用程序中的所有模型 - 这就是包括 Mongoid::Document 在内的所有内容。

    所有Config方法都可以从Mongoid模块中访问,所以你可以调用:

    Mongoid.models #=> [...]
    

    【讨论】:

    • [Mongoid::GridFs::Fs::File, Mongoid::GridFs::Fs::Chunk, Invoice] 只有这个。我究竟做错了什么?感谢您的编辑。
    • @KumarAbinash 我不知道。该方法适用于我所宣传的,即该数组包含所有具有include Mongoid::Document 行的类。
    • @Kumar ,此方法仅提供您在会话中使用的模型。因此,如果访问 rails 控制台并调用 User.first,例如,Mongoid.models 将只返回 User 模型。
    【解决方案2】:

    您应该可以使用ActiveRecord::Base.connection.tables 列出 ActiveRecord 模型。

    对于 mongoDB,您可以使用 https://stackoverflow.com/a/10862470/871580

    【讨论】:

      猜你喜欢
      • 2015-11-07
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-01
      • 1970-01-01
      • 2022-08-15
      • 2017-12-17
      相关资源
      最近更新 更多