我使用MONGRIDE_DABASE(" database_name")使用Mongoid与Rails对多个数据库进行了交谈。如何以编程方式找到当前数据库?
会话上的杂种文档:http://mongoid.org/en/moped/docs/driver.html将方法定义为覆盖数据库,但没有定义一种使用当前数据库的方法。
得到它!
Mongoid.default_session.options[:database]
获取此方法的新方法
Mongoid::Config.clients["default"]["database"]
您也可以看看
Mongoid::Config.clients
查看还有什么可用。
如果您想要覆盖的数据库,则实际上需要使用
Mongoid::Threaded.database_override
mongoid版本7.0.5
Mongoid.client(:default).database
运行mongoid.default_session.options [:database]给出了一个错误,即default_session无效。现在是default_client。
很有效。在没有[:数据库]的情况下运行它以获取所有选项,并查看数据库的完整配置。
mongoid :: config.clients [" default"] ["数据库"]假设您使用mongoid.yml的URI版本是不是。在所有情况下,您都会获得零。使用mongoid :: config.clients [" default"]获取当前数据库的完整配置,或者mongoid :: config.clients [" default"] ['uri'],以提供完整的URI。
在最后一个端口号之后,从URI中选择数据库名称。可以使用碎片配置