尝试使用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 %>
答案 0 :(得分:2)
听起来您需要在系统中加入file
。
如果您使用的是Windows,则需要从this URL下载文件,将其安装在硬盘上,然后将其添加到PATH环境var:
- 点击“开始”
- 在“计算机”上,右键单击并选择“属性”
- 在“属性”中,选择“高级系统设置”
- 单击“环境变量”按钮
- 找到“PATH”var - 在最后,添加新安装的
file.exe
的路径(通常为C:\Program Files (x86)\GnuWin32\bin
)- 重新启动已打开的所有CMD外壳看看它是否有效
醇>
答案 1 :(得分:0)
您可能正在尝试附加未正确识别为图像的文件,或者具有图像扩展名且具有不同内容的文件(例如PDF)。
此处讨论了一些解决方法:https://github.com/thoughtbot/paperclip/issues/1924
也可以帮助检查日志文件 - 它应该告诉您Paperclip认为附件的类型是什么。