4

シナトラとモンゴイドでペーパークリップを使用する際に問題があります。アップロードすると、次のエラーが表示されます。


Paperclip::AdapterRegistry::NoHandlerError - No handler found for {"tempfile"=>#, "filename"=>"image-[Converted].jpg", "content_type"=>"image/jpeg", "size"=>35222}:

モデルでは、私は残しました:


class User
  include Mongoid::Document
  include Mongoid::Paperclip

  has_mongoid_attached_file :avatar,
    :path           => ':attachment/:id/:style.:extension',
    :default_url => '/images/missing_portrait_:style.jpg',
    :styles => {
      :original => '1920x1680>',
      :small    => '100x100#',
      :medium   => '250x250',
      :large    => '500x500>'
    }
end

そして、ルート/アップロードは次のとおりです。

post '/upload' do
  User.create! ::avatar => to_paperclip(params[:file])
end

def to_paperclip(image)
  paperclip = {}
  paperclip['tempfile'] = image[:tempfile]
  paperclip['filename'] = image[:filename]
  paperclip['content_type'] = image[:type]
  paperclip['size'] = image[:tempfile].size
  paperclip  
end

どうすればこれを解決できますか?

4

2 に答える 2

0

これは私のために働く

user = User.new()
user.avatar  = params[:avatar][:tempfile]
user.avatar_file_name = params[:avatar][:filename]
于 2013-09-26T14:39:09.797 に答える
0

ペーパークリップでは解決策が見つかりませんが、最終的にキャリアウェーブを使用して、必要なものが機能しました

于 2012-07-14T20:08:35.837 に答える