Rails:无法保存音频文件(回形针)

时间:2017-11-16 08:58:34

标签: ruby paperclip ruby-on-rails-5

我无法保存音频文件,所以你能告诉我如何保存音频文件。 我用的是宝石回形针!

日志是 Command :: file -b --mime'/var/folders/1z/psyvq9q911b7hclx5xw03dk40000gn/T/4266fc074db087b967597da8e4d2d11020171116-3739-1bal5v0.mp3' [paperclip] Content Type Spoof:Filename as333auda.mp3(来自Headers的audio / mp3,来自Extension的[“audio / mpeg”]),从文件命令中发现的内容类型:video / mp4。请参阅文档以允许此组合。    (0.1ms)开始交易 Command :: file -b --mime'/var/folders/1z/psyvq9q911b7hclx5xw03dk40000gn/T/4266fc074db087b967597da8e4d2d11020171116-3739-wh10af.mp3' [paperclip] Content Type Spoof:Filename as333auda.mp3(来自Headers的audio / mp3,来自Extension的[“audio / mpeg”]),从文件命令中发现的内容类型:video / mp4。请参阅文档以允许此组合。    (0.2ms)回滚事务 重定向到http://localhost:3000/listings/new 完成302找到128ms(ActiveRecord:3.0ms)

显示你的模型listing.rb

class Listing < ApplicationRecord
     belongs_to :user
     has_many :photos
     has_many :likes
     has_many :customers
     has_many :reviews
     validates :listing_title, presence: true

    has_attached_file  :file,  :storage => :s3,
                               :s3_credentials => "#{Rails.root}/config/s3.yml"

   validates_attachment :file, content_type: { content_type: ['file/mp3'] }


 end

显示您查看new.html.erb

<%= form_for @listing do |f| %>
    <div class="row">
     <div class="col-md-12 select">
       <div class="form-group">
        <label>タイトル</label>
           <%= f.text_field :listing_title, autofocus: true, :placeholder => "タイトル", :class => 'form-control', required: "true" %>
       </div>
      </div>
     </div>
     <br>

     <div class="row">
      <div class="col-md-12 select">
       <div class="form-group">
        <label>ファイル</label>
          <%= f.file_field :file, :class => 'form-control' %>
       </div>
      </div>
     </div>
     <br>

     <div class="actions">
       <%= f.submit "Save", class: "btn btn-danger" %>
     </div>
<% end %>

控制器没问题!我设置了参数! 我需要什么才能成功保存音频文件? 请告诉我!

2 个答案:

答案 0 :(得分:1)

尝试:

{ content_type: ['audio/mp3'] }

如果仍然无效,您可以尝试:

{ content_type: ['audio/mpeg', 'audio/x-mpeg', 'audio/mp3', 'audio/x-mp3', 'audio/mpeg3', 'audio/x-mpeg3', 'audio/mpg', 'audio/x-mpg', 'audio/x-mpegaudio'] }

答案 1 :(得分:0)

MP3音频文件的mime类型为"audio/mpeg"

将您的内容类型更改为"audio/mpeg"