Mongoid动态更改主机

时间:2013-08-21 00:16:13

标签: ruby-on-rails mongodb mongoid

Mongoid提供了几个选项来更改正在使用的mongodb数据库,方法是指定新数据库或将会话名称更改为已在mongoid.yml文件中定义的名称。

我想知道在运行应用程序时是否有办法更改会话(即mongodb主机)。

例如,如果我启动了我的应用程序并且它最初在服务器1上的数据库上运行,那么有没有办法在服务器上使用示例数据库2

2 个答案:

答案 0 :(得分:3)

以下内容允许用户动态添加会话

session_hash = {"database" => "testmongo", "hosts" => ["127.0.0.1:3003"], "username" => "testuser", "password" => "test_password"}
Mongoid::Config.sessions[:mongo_dynamic] = session_hash

答案 1 :(得分:2)

Model.with(database: "other_db_name").create()

我不知道您是否可以指定其他服务器。但值得一试