2013-04-09 56 views
0

我在目录中有一个minitest_helper.rb和mongoid.yml文件。我将下面的代码放在minitest_helper中;没有这样的mongoid配置文件问题

require 'mongoid' 
Mongoid.load!("mongoid.yml", :test) 

虽然在同一个目录下这些文件,Mongoid无法加载阳明文件,我得到了“没有这样的文件”如下:

/home/developer/.rvm/gems/ruby-1.9.3-p374/gems/mongoid-3.1.2/lib/mongoid/config 
/environment.rb:40:in `initialize': No such file or directory - mongoid.yml 
(Errno::ENOENT) 

此外,我不喜欢使用Rails的任何框架,Sinatra等 有什么不对?

回答

1

正如您在documentation中看到的那样,#load!需要该文件的完整路径。试着改变代码弄成这个样子:

Mongoid.load!(File.join('path_to_the_yml','starting_at_root_of_the_project', 'mongoid.yml') , :test) 

的方式在构造File.join将取决于你的目录结构。如果我有一个结构,像这样:

project_root 
--lib 
--spec 
----fixtures 
------test.xml # the path for this file is project_root/spec/fixtures/test.xml 

然后File.join将这个样子:

File.join('spec','fixtures', 'test.xml') 
相关问题