1

別のアプリからの API 呼び出しを介してファイルをコントローラーにアップロードしようとしています。ファラデーを使用して投稿リクエストを作成していますが、次のエラーが発生しています。

Paperclip::AdapterRegistry::NoHandlerError (No handler found for "#<UploadIO:0x007fb3ba8391c0>"):
app/controllers/talks_controller.rb:21:in `create'

これは私のファラデーリクエストです:

puts conn.post "/talks.json", { talk: { title: 'asdf8', link: 'fakelink', audio: Faraday::UploadIO.new('dhh-37signals.mp3', 'audio/mp3') }}

そして、これは私のモデルです:

class Talk < ActiveRecord::Base
  validates :title, presence: true,
                length: { minimum: 5 }
  validates :link, presence: true
  has_attached_file :audio
  do_not_validate_attachment_file_type :audio
end

#<UploadIO:0x007fb3ba8391c0>"これは、実際のファイルではなく、アップロードされたファイルとしてのみ表示されるペーパークリップに関係していると思います。ビューのフォームからファイルをアップロードすると正常に動作しますが、ファラデーを介したアップロードは機能しません。何か案は?

4

0 に答える 0