使用paperclip(本地服务器)

时间:2015-12-17 13:36:56

标签: ruby-on-rails validation ruby-on-rails-4 paperclip

尝试使用paperclip gem将图像上传到我的(列表)时出错。浏览器输出的错误是:1错误禁止保存此列表:图像的内容不是他们报告的内容**作为备注,图像魔术已成功安装在我的计算机上,并且没有问题

my listing.rb file

class Listing < ActiveRecord::Base
  has_attached_file :image, :styles => { :medium => "200x", :thumb => "100x100>" }, :default_url => "default.jpg"
  validates_attachment_content_type :image, :content_type => /\Aimage\/.*\Z/
end

my gemfile

gem "paperclip", "~> 4.3"

我的listings_controller

 def listing_params
      params.require(:listing).permit(:name, :description, :price, :image)
    end
end

最后是我的表格

<%= form_for @listing, :html => { :multipart => true } do |f| %>
...
  ...
  <div class="form-group">
    <%= f.file_field :image, class: "form-control" %>
  </div>
  <div class="form-group">
    <%= f.submit class: "btn btn-primary" %>
  </div>
<% end %>

2 个答案:

答案 0 :(得分:2)

听起来您需要在系统中加入file

如果您使用的是Windows,则需要从this URL下载文件,将其安装在硬盘上,然后将其添加到PATH环境var:

  
      
  1. 点击“开始”
  2.   
  3. 在“计算机”上,右键单击并选择“属性”
  4.   
  5. 在“属性”中,选择“高级系统设置”
  6.   
  7. 单击“环境变量”按钮
  8.   
  9. 找到“PATH”var - 在最后,添加新安装的file.exe的路径(通常为C:\Program Files (x86)\GnuWin32\bin
  10.   
  11. 重新启动已打开的所有C​​MD外壳看看它是否有效
  12.   

答案 1 :(得分:0)

您可能正在尝试附加未正确识别为图像的文件,或者具有图像扩展名且具有不同内容的文件(例如PDF)。

此处讨论了一些解决方法:https://github.com/thoughtbot/paperclip/issues/1924

也可以帮助检查日志文件 - 它应该告诉您Paperclip认为附件的类型是什么。