Я пытаюсь заставить Carrierwave (0.5.1) работать с Mongoid (2.0.0.beta.20), Rails 3. Я следовал за каждым шагом на этом руководстве .
В config / initializers / carrierwave.rb у меня есть:
CarrierWave.configure do |config|
config.grid_fs_database = Mongoid.database.name
config.grid_fs_host = Mongoid.config.master.connection.host
config.storage = :grid_fs
config.grid_fs_access_url = "/uploads"
end
Когда я пытаюсь запустить свой сервер ( rails server ).В консоли я получаю:
...config/initializers/carrierwave.rb:3:in `block in <top
(required)>': undefined method `host' for #<Mongo::Connection:
0x00000103802420> (NoMethodError)
Я не понимаю, почему я получаю эту ошибку.Я искал везде и не могу понять, почему это происходит ...
Кажется, Mongoid.config.master.connection.host больше не работает в более новыхверсии Mongoid.Это было удалено?Какая замена для этого?
Пока что мой обходной путь - следующий код:
CarrierWave.configure do |config|
config.grid_fs_database = Mongoid.database.name
config.grid_fs_host = 'localhost'
config.storage = :grid_fs
config.grid_fs_access_url = "/uploads"
end
Строка 3, должна быть: config.grid_fs_host = 'localhost' .<- Есть ли лучший способ динамически указывать хост в зависимости от среды? </p>