ruby-on-rails-3 - 由于某种原因未创建 Rails CarrierWave 版本

标签 ruby-on-rails-3 imagemagick carrierwave homebrew

我有以下文件 uploader

class ItemImageUploader < CarrierWave::Uploader::Base
  include ::CarrierWave::Backgrounder::Delay
  include CarrierWave::MiniMagick
  include Sprockets::Helpers::RailsHelper
  include Sprockets::Helpers::IsolatedHelper

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

  # Provide a default URL as a default if there hasn't been a file uploaded:
  def default_url
    asset_path("fallback/" + [version_name, "image.png"].compact.join('_'))
  end

  def cache_dir
      "uploads/tmp"
  end

  # Create different versions of your uploaded files:
  version :thumb do
    process :resize_to_fill => [80,80]
  end

  def extension_white_list
    %w(jpg jpeg gif png)
  end

图片类

class Picture < ActiveRecord::Base
  belongs_to :imageable, :polymorphic => true
  mount_uploader :image, ItemImageUploader
  process_in_background :image
  validates_presence_of :image

  def copy
    Picture.new(:image => self.image)
  end

在 Carrier_wave.rb 初始化文件中进行以下配置:

CarrierWave.configure do |config|
config.enable_processing = true
    #config.permissions = 0666
    #config.directory_permissions = 0777
    config.storage = :file
end

图像上传正确,但未创建缩略图,未发生错误。请指教。

最佳答案

我自己就用头撞了这个。正如评论所暗示的,使用 rierwave_backgrounder 会导致此问题。你可以在他们的 documentation 中看到它:

process_in_background - 这存储没有处理/版本控制的原始文件。

对解决问题没有帮助,但我想我应该验证一下问题。

关于ruby-on-rails-3 - 由于某种原因未创建 Rails CarrierWave 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12097667/

相关文章:

ruby-on-rails - Ruby on Rails 奇怪的运算符

ruby-on-rails - 我如何在 capybara 中单击此按钮

ruby-on-rails-3 - 问题 w/Paperclip、MacPorts、ImageMagick 和 Snow Leopard

node.js - 在 graphicsmagick 中从远程流创建 GIF

python - Wand 无法打开现有文件

ruby-on-rails - 如何检查表中的任何 ActiveRecord 中是否存在字符串?

jquery - Ruby on Rails 在盒表中显示对象,并动态填充列和行

ruby-on-rails - Carrierwave:本地镜像的权限被拒绝

ruby - 如何使用 CarrierWave 更正文件缩略图生成的文件扩展名

ruby-on-rails-3 - 用户的载波未定义方法 `avatar_changed?'