在我的 Rails 3.0.10 应用程序中,使用 Mongoid 2.2.2,我在生产中遇到了这个错误(在开发中工作正常):
.../gems/mongo-1.3.1/lib/mongo/util/support.rb:50:in `validate_db_name': db_name must be a string or symbol (TypeError)
我已将此添加到我的 environment.rb 中:
require 'yaml'
YAML::ENGINE.yamler = 'syck'
另外,我已经defaults <<
从我的 mongoid.yml 文件中删除了这些行,并将它们替换为默认值。
当我使用 mongoid-2.2.6 时,应用程序启动,但是当我查询 db 时出现相同的错误。
我在看什么?
解决了
需要为主机指定 'localhost' 而不是<%= ENV['MONGOID_HOST'] %>
,还需要指定database:
名称。