Mongoid没有Rails

Tyl*_*itt 14 ruby mongodb mongoid mongoid3

我正在使用独立的ruby应用程序,无法配置Mongoid 3.0.13.

我遇到过几个配置模块的示例应用程序:

Mongoid::Config.instance.from_hash({"database" => "oid"}) 
Run Code Online (Sandbox Code Playgroud)

要么

Mongoid.configure do |config|
 name = "mongoid_test_db"
 host = "localhost"
 port = 27017
 config.database = Mongo::Connection.new.db(name)
end
Run Code Online (Sandbox Code Playgroud)

这导致:

undefined method `database=' for Mongoid::Config:Module (NoMethodError)
Run Code Online (Sandbox Code Playgroud)

最近配置设置似乎已更改.

我也尝试过:

Mongoid::Config.connect_to("sweet")
Run Code Online (Sandbox Code Playgroud)

但这似乎什么都不做.

Bra*_*ack 13

通过"独立",我假设你的意思不是铁路.Mongoid实际上提供了一种简单的方法来使这项工作无论你如何运行它.

  1. mongoid.yml像往常一样定义一个包含数据库连接信息的文件.
development:
  clients:
    default:
      database: mongoid
      hosts:
        - localhost:27017
Run Code Online (Sandbox Code Playgroud)
  1. 确保您的应用程序中需要Mongoid.
  2. 调用Mongoid.load!Mongoid解析您的配置文件并初始化自己.
require 'mongoid'
Mongoid.load!('/path/to/your/mongoid.yml')
Run Code Online (Sandbox Code Playgroud)

这个信息也可以在"Sinatra,Padrino和其他人"部分找到:http: //mongoid.org/en/mongoid/docs/installation.html

相同的方法适用于非webapps.希望有所帮助.