0

これが私の宝石リストです。

  • モンゴ(1.8.2)
  • モンゴイド (3.0.17)
  • mongoid-grid_fs (1.7.0)
  • 搬送波 (0.8.0)
  • 搬送波モンゴイド (0.4.0)

アップロード イメージを生成しようとしましたが、うまくいきません。carrierwave.rb は次のようになります。

require 'carrierwave/mongoid'
CarrierWave.configure do |config|
    config.grid_fs_database = Mongoid::Config.sessions[:default]
    config.grid_fs_port = 27017
    config.grid_fs_host = '127.0.0.1'
    config.storage = :grid_fs
end

しかし、エラーを出します:

/config/initializers/carrierwave.rb:3:in `block in <top (required)>': undefined method `grid_fs_database=' for CarrierWave::Uploader::Base:Class (NoMethodError)
.....

そのための解決策はありますか?

ありがとう

4

1 に答える 1

0

Carrierwave-mongoid のソースをざっと見てみると、指定した構成オプション ( grid_fs_databasegrid_fs_port、およびgrid_fs_host) が有効なオプションではないようです - したがって、エラーです。

私の理解では、carrierwave-mongoid は Mongoid 構成から mongoDB 構成を派生させるため、これを再度指定する必要はありません。構成は次のようになります。

require 'carrierwave/mongoid'
CarrierWave.configure do |config|
    config.storage = :grid_fs
    config.grid_fs_access_url = "/uploads" # or whatever you'd like the HTTP path to be
end
于 2013-01-24T13:22:27.773 に答える