attachment_fu
,Carrierwave似乎是显而易见的替代品。目前我正在将文件上传到文件系统(尚未使用云文件)。我在Lion上,XCode 4.3.2,已安装命令行工具。运行:
$ brew doctor
# Your system is raring to brew.
我可以使用以下配置上传和调整大小图片:
- rails 3.1.4
- ruby 1.8.7
- carrierwave 0.5.8
- mini_magick 3.4
- rails 3.2.3
- ruby 1.9.3(或1.9.2)
- carrierwave 0.6.2
$ bundle update
),但是使用 mini_magick
调整大小会返回此错误消息:"File Failed to manipulate with MiniMagick, maybe it is not an image Original Error: MiniMagick::Invalid", where File is the carrierwave uploader.
FileUploader 包含:
include CarrierWave::MiniMagick
def store_dir .. end # the shipped default
process :resize_to_limit => [500, 600]
我的附件类(使用mount_uploader :file, FileUploader
)是Portrait
、ReferenceLetter
等附件相关类的父类。每个附件类都从Attachment
继承,使用:polymorphic => true
,并且belongs_to :attachable
(用户),反过来,attachable
又has_many :portraits
,:reference_letters
等。
这些方法都没有起作用(链接自carrierwave的已知问题页面):
我不想像这里建议的那样手动安装ImageMagick:
carrierwave+mini_magick宝石=不是图像错误
我正在使用Homebrew。帮助将非常棒。谢谢。