【发布时间】:2015-02-26 23:09:02
【问题描述】:
我有一个带有附件的Product 模型:
has_attached_file :image,
:path => ":rails_root/public/uploads/:basename.:extension"
validates_attachment_presence :image
validates_attachment_content_type :image,
:content_type => ["image/jpg", "image/jpeg", "image/png"]
但是,无论我尝试上传哪种文件,验证都会失败并显示消息
图片的扩展名与其内容不匹配
我该如何解决这个问题?
【问题讨论】:
-
为什么要在cmets中给出答案??反正你的回答是正确的
-
@janfoeh 它出现错误
Missing template products/create并且不写入数据库 -
这是一个不同的问题。您能否将您的
create控制器方法添加到您的问题中?或者更好的是,添加您的完整控制器。 -
您可能遇到了验证问题。
@product不保存,因此您的create方法不会重定向并尝试执行默认操作 - 呈现名为create的模板。尝试使用@product.save!而不是@product.save让它抛出异常;这样可以更容易地了解它为什么不保存。 -
@janfoeh 验证失败:图片的扩展名与其内容不匹配