无法使用Rails将音频文件上传到Cloudinary

时间:2017-10-27 00:32:10

标签: ruby-on-rails ruby audio cloudinary

我正在尝试将音频文件添加到Cloudinary存储中。我被卡住了 错误显示:

CloudinaryException (Invalid resource type audio):
app/controllers/musics_controller.rb:23:in `create'

我在我的Music.rb文件中添加了来自堆栈溢出的另一个帮助的配置:

has_attached_file :song, :storage => :cloudinary, path: 'muvent/musics/:filename', :cloudinary_resource_type => :audio
validates_with AttachmentSizeValidator, attributes: :song, less_than: 10.megabytes
validates_attachment_content_type :song, :content_type => [ 'application/octet-stream', 'audio/mpeg', 'audio/x-mpeg', 'audio/mp3', 'audio/x-mp3', 'audio/mpeg3', 'audio/x-mpeg3', 'audio/mpg', 'audio/x-mpg', 'audio/x-mpegaudio' ]

但是,我仍然无法将文件上传到Cloudinary。我还在我的控制器music_params中添加了歌曲栏的许可证,错误来了。我该如何解决这个问题?

更新

我已修复上述错误。但是为什么日志服务器中的另一个错误会在rails中显示file -b --mime? Gemfile我在这里使用paperclip和paperclip-cloudinary。

1 个答案:

答案 0 :(得分:1)

请确保根据文件类型使用正确的resource_type(Cloudinary参数)。默认资源类型为image。在上传音频/视频文件时将其设置为video,或在上传非媒体文件(例如doc,csv,css,js等)时将其设置为raw