use*_*773 11 ruby-on-rails mongodb mongoid
我正在使用Rails 3和Mongoid gem.但我需要用mongodb数据库列表填充一个组合框.在mongodb shell中,我们可以使用"show dbs"命令列出数据库.mongodb驱动程序中还有getDBNameList()和db.getCollectionNames()命令.但我无法弄清楚如何在rails应用程序上使用ruby中的这些命令.
我也在想; 如果我可以使用mongoid gem获取数据库和集合列表.因为我确信我已经读过mongoid支持使用多个数据库,但我认为它依赖于模型.
所以你怎么看; 有什么解决方案,或者我必须使用mongo-ruby-driver gem,而不是mongoid.
Har*_*tty 15
在mongoid 3
Mongoid.default_session.collections # returns the collections
Run Code Online (Sandbox Code Playgroud)
我通常提取名称如下:
Mongoid.default_session.collections.map(&:name).sort
Run Code Online (Sandbox Code Playgroud)
Ste*_*eve 10
您可以使用mongo ruby驱动程序执行以下操作:
require 'rubygems'
require 'mongo'
connection = Mongo::Connection.new("localhost")
connection.database_names.each do |name|
db = connection.db(name)
db.collections.each do |collection|
puts "#{name} - #{collection.name}"
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20847 次 |
| 最近记录: |