Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 导轨-WIndows 7 carrierwave,minimagick resize不工作_Ruby On Rails_Windows 7_Imagemagick_Carrierwave_Minimagick - Fatal编程技术网

Ruby on rails 导轨-WIndows 7 carrierwave,minimagick resize不工作

Ruby on rails 导轨-WIndows 7 carrierwave,minimagick resize不工作,ruby-on-rails,windows-7,imagemagick,carrierwave,minimagick,Ruby On Rails,Windows 7,Imagemagick,Carrierwave,Minimagick,我尝试使用rails应用程序设置上传照片。但是,carrierwave上载程序不会调整正在上载的照片的大小。当我不调用resize_to_fill函数时,照片上传得非常完美。有什么建议吗 提交照片时,如果将照片大小调整为填充,则返回错误“处理失败”。我怎样才能修好它 我想我需要“要求”carrierwave/processing/mini_magick调用resize_to_fill,但我不知道该将此文件放在何处 gemfile “carrierwave”、“0.4.10” “迷你魔术”,“3.

我尝试使用rails应用程序设置上传照片。但是,carrierwave上载程序不会调整正在上载的照片的大小。当我不调用resize_to_fill函数时,照片上传得非常完美。有什么建议吗

提交照片时,如果将照片大小调整为填充,则返回错误“处理失败”。我怎样才能修好它

我想我需要“要求”carrierwave/processing/mini_magick调用resize_to_fill,但我不知道该将此文件放在何处

gemfile
“carrierwave”、“0.4.10”
“迷你魔术”,“3.2.1”
“轨道”、“2.3.14”

平台
win7 64位
ruby 1.8.7 imagemagick(路径=C:\imagemagick-6.7.2-Q16)

击球手


谢谢你的回复。以下是我的编码,请告知。
我只是在想问题是不是来自于我的win7+imagemagick+mini_magick+carrierwave组合?我想,许多人都应该很容易地重现这样一个问题。这些版本彼此不兼容吗

我刚刚测试了我的应用程序,并试图再次上传照片。返回一个处理错误:
无法使用MiniMagick进行操作,可能不是图像?原始错误:命令(“identify-ping C:/Users/User/mini_magick20111018-4296-f18lsi-0.jpg”)失败:{:output=>“'identify'\244\243\254O\244\272\263\241\251Υ~\263\241\251R\245O\241B……,:status_code=>1}
当然,jpg不是在C:/Users/User文件夹中创建的。请帮忙

{avatar_uploader.rb}  
class AvatarUploader < CarrierWave::Uploader::Base  
  include CarrierWave::MiniMagick  
  storage :file  
  def store_dir  
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"  
  end

  process :resize_to_fill => [320, 240]

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

{event_photo.rb}  
class EventPhoto < ActiveRecord::Base  
  attr_accessible :event_id, :avatar, :created_by, :updated_by  

  belongs_to:event
  mount_uploader :avatar, AvatarUploader  
end

{preinitializer.rb}  
begin  
  require 'rubygems'  
  require 'bundler'  
end
{avatar_uploader.rb}
类AvatarUploader[320240]
def扩展白名单
%w(jpg jpeg gif png)
结束
结束
{event_photo.rb}
类EventPhoto
我遇到了类似的问题,虽然不是在Windows上,但这些信息可能会有所帮助

从MiniMagick上的Github页面(https://github.com/probablycorey/mini_magick/),似乎MiniMagik依赖于“mogrify”命令

调试该问题的第一步是确保在我的开发、登台和生产系统上构建了正确的库,并且“mogrify”命令可用

为了实现这一目标,在我的OS/X系统上,我必须卸载并重新安装ImageMagik,这是我在macports上完成的

我用“标识文件名”验证了安装,然后在Rails控制台中执行了以下操作:

filename = '/Users/me/tmp/testfile.jpg'
image = MiniMagick::Image.open(filename)

步骤1:检查mini_magick是否正常工作

  • 必须安装ImageMagick或GraphicsMagick
第2步。尝试在irb上执行以下命令

> irb
> require 'mini_magick'
> filename = '/Users/me/tmp/testfile.jpg'
> image = MiniMagick::Image.open(filename)
  • 如果在运行此程序时出现错误,如“此图像格式无解码委托”,请转至步骤3
步骤3:检查Imagemagick支持的格式

> identify -list format
  • 列表中必须列出jpg。如果没有,请转至步骤4
第4步。下载并安装Imagemagick的解码代理

地点:

  • 然后重新安装Imagemagick

请添加一个代码示例,说明您正在尝试完成的任务。我们刚刚在生产中安装了ImageMagick,并使用上面相同的代码段进行了验证,所有功能都正常工作。祝你好运这段代码和大量的调试使我找到了一个subexec分支,它是让minimagik在JRuby和Windows上工作所必需的。fork是:而为我修复它的Gemfile行是:gem“subexec”,:git=>”这家伙说。
> tar -zxvf jpegsrc.v8b.tar.gz
> cd jpegsrc.v8b
> sudo ./configure
> sudo make
> sudo make install