【问题标题】:carrierwave does not save content_type on Uploadercarrierwave 不会在 Uploader 上保存 content_type
【发布时间】:2014-02-03 15:14:54
【问题描述】:

我已按照https://github.com/carrierwaveuploader/carrierwave#setting-the-content-type的指示进行操作

所以我得到了:

require 'carrierwave/processing/mime_types'
class AssetFileUploader < CarrierWave::Uploader::Base
  include CarrierWave::MimeTypes
  process :set_content_type
  ...

但文件上传后 content_type 不会更新。

我有一个 AssetInfo 模型,其中安装了上传器 AssetFileUploader

:file attribute
class AssetInfo < ActiveRecord::Base
mount_uploader :file, AssetFileUploader
...

参数包含:

... "file"=># @headers="Content-Disposition: form-data; name=\"asset[asset_info_attributes][file]\"; filename=\"img.jpg\"\r\nContent-Type: image/jpeg\r\n"> ...

文件上传后我在控制台尝试:

AssetInfo.last.file.file =>

AssetInfo.last.file.file.content_type => 无

【问题讨论】:

  • 更新应用程序以使用 Amazon S3 后,内容类型被保存

标签: ruby-on-rails ruby carrierwave


【解决方案1】:

Carrierewave 表示他们将来会弃用此功能并建议改用 Carrierwave::SanitizedFile

https://github.com/carrierwaveuploader/carrierwave/blob/v0.11.2/lib/carrierwave/processing/mime_types.rb

这个方法还有一个覆盖方法

https://github.com/carrierwaveuploader/carrierwave/blob/v0.11.2/lib/carrierwave/processing/mime_types.rb#L56

也许这能给你指明方向。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-15
    • 2013-09-07
    • 2012-04-04
    • 1970-01-01
    相关资源
    最近更新 更多