我正在尝试通过另一个应用程序的api调用将文件上传到我的控制器。我正在使用Faraday来发布帖子请求,但我收到了这个错误:
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
我认为这与paperclip有关,只是将#<UploadIO:0x007fb3ba8391c0>"
视为我上传的文件,而不是我的实际文件。当我在我的视图中通过我的表单上传文件时,它工作正常,但通过法拉第上传不起作用。有什么想法吗?