J'essaye de faire fonctionner Carrierwave (0.5.1) avec Mongoid (2.0.0.beta.20), Rails 3. J'ai suivi chaque étape au this guide.Qu'est-il arrivé à Mongoid.config.master.connection.host?
Dans config/initializers/carrierwave.rb, j'ai:
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
Lorsque je tente de démarrer mon serveur (rails serveur). Dans la console, je reçois:
...config/initializers/carrierwave.rb:3:in `block in <top
(required)>': undefined method `host' for #<Mongo::Connection:
0x00000103802420> (NoMethodError)
Je ne comprends pas pourquoi j'obtiens cette erreur. Je l'ai regardé partout et ne peut pas sembler trouver pourquoi cela se passe ...
Il semble, Mongoid.config.master.connection.host ne fonctionne plus dans les versions les plus récentes de MongoId. Est-ce que cela a été supprimé Quel est le remplacement pour cela?
Jusqu'à présent, ma solution de contournement est le code suivant:
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
Ligne 3, devrait être: config.grid_fs_host = 'localhost'. < - Existe-t-il un meilleur moyen d'indiquer dynamiquement l'hôte en fonction de l'environnement?
fonctionne comme un charme! – sandstrom