【问题标题】:Rails - trying to open a file, but getting MiniMagick::InvalidRails - 试图打开一个文件,但得到 MiniMagick::Invalid
【发布时间】:2013-04-07 11:57:49
【问题描述】:

我正在尝试在控制器中加载文件,例如

  Avatar.all.each do |avatar|
     if avatar.avatar_file_name
       file = "lib/data/#{avatar.avatar_file_name}"

       image = MiniMagick::Image.open("#{file}")
       ...
     end
   end 

但每当我运行此代码时,我都会收到错误消息

MiniMagick::无效

here 所述,我已经尝试重新安装 imagemagick,但它并没有真正帮助我。

哪里有问题?我错过了一个组件还是什么? 谢谢

【问题讨论】:

    标签: ruby-on-rails ruby image image-processing imagemagick


    【解决方案1】:

    也许你应该先检查文件是否存在

    if File.exist?(file)
      image = MiniMagick::Image.open(file)
    end
    

    要获取文件的路径,您应该执行以下操作:

    file = "#{Rails.root}/lib/data/#{avatar.avatar_file_name}"
    

    btw lib 不是保存图片的最佳位置。

    【讨论】:

      猜你喜欢
      • 2015-06-16
      • 2020-02-27
      • 2017-09-30
      • 1970-01-01
      • 2015-11-07
      • 1970-01-01
      • 2015-04-08
      • 2015-05-09
      • 2022-12-17
      相关资源
      最近更新 更多