Ruby on rails Can';在Heroku上使用carrierwave上传PDF?

Ruby on rails Can';在Heroku上使用carrierwave上传PDF?,ruby-on-rails,pdf,heroku,carrierwave,ruby-on-rails-4.2,Ruby On Rails,Pdf,Heroku,Carrierwave,Ruby On Rails 4.2,在我的rails 4应用程序中,我使用carrierwave将文件上传到google云存储。我能够成功上传图像文件,但PDF无法工作。它显示以下错误: 不允许上载“pdf”文件,允许的类型:jpg、jpeg、gif、png 这是我的上传程序:- # encoding: utf-8 require 'carrierwave/processing/mime_types' class AttachmentUploader < CarrierWave::Uploader::Base incl

在我的rails 4应用程序中,我使用carrierwave将文件上传到google云存储。我能够成功上传图像文件,但PDF无法工作。它显示以下错误:

不允许上载“pdf”文件,允许的类型:jpg、jpeg、gif、png

这是我的上传程序:-

# encoding: utf-8
require 'carrierwave/processing/mime_types'
class AttachmentUploader < CarrierWave::Uploader::Base

  include CarrierWave::MiniMagick
  include CarrierWave::MimeTypes

  storage :fog

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

  process :set_content_type

  def extension_white_list
    %w(jpg jpeg gif png pdf)
  end

end
编码:utf-8 需要“carrierwave/processing/mime_类型” 类AttachmentUploader 我不知道这个代码有什么问题

这是附件模型

class Attachment < ActiveRecord::Base
  mount_uploader :attachment, AttachmentUploader

  # Associations

  belongs_to :attached_item, polymorphic: true

  # Validations

  validates_presence_of :attachment
  validates_integrity_of :attachment

  # Callbacks

  before_save :update_attachment_attributes

  # Delegate

  delegate :url, :size, :path, to: :attachment

  # Virtual attributes

  alias_attribute :filename, :original_filename

  private

  def update_attachment_attributes
    if attachment.present? && attachment_changed?
      self.original_filename = attachment.file.original_filename
      self.content_type = attachment.file.content_type
    end
  end
end
类附件
更新: 在本地机器上测试时,它工作,但在heroku上不工作。在development env上,它可以正常工作,我可以检查上传到google storage的文件。但在heroku上显示错误“您不允许上载“pdf”文件,允许的类型:jpg、jpeg、gif、png”

更新: 我的应用程序中还有另一个上传程序ImageUploader。当我将其扩展名设置为包含pdf时,附件上传器也可以工作。这是怎么回事。我的所有上传程序中是否需要相同的分机白名单


提前谢谢

在发布完整的错误日志后,您是否对此模型进行了任何验证?您是否碰巧使用了图像字段?奇怪。如果将
pdf
放在列表的开头会发生什么?我正在使用rails\u admin并使用它上载文件。它应该可以工作。删除此
验证:附件的完整性\u
并重试一次。发布完整的错误日志,您是否对此模型进行了任何验证?您是否碰巧使用了图像字段?奇怪。如果将
pdf
放在列表的开头会发生什么?我正在使用rails\u admin并使用它上载文件。它应该可以工作。删除此
验证:附件的完整性
,然后再试一次。