对不起我正在使用回形针。所以当我附加一个不同于图像的文件时(当我不上传jpeg,gif或png示例zip时)显示此错误:
* Photo C:/Users/MAXIMI~1/AppData/Local/Temp/stream4556-0.rar is not recognized by the 'identify' command.
* Photo C:/Users/MAXIMI~1/AppData/Local/Temp/stream4556-0.rar is not recognized by the 'identify' command.
* Photo C:/Users/MAXIMI~1/AppData/Local/Temp/stream4556-0.rar is not recognized by the 'identify' command.
这是此错误的区域设置树路径?或者是回形针错误的区域设置树路径。
注意:我说的是i18n locale(翻译)
提前致谢
答案 0 :(得分:1)
我不知道i18n的翻译路径,但如果您不希望用户上传非图像文件类型,您应该使用回形针为您提供的validates_attachment_content_type
验证器:
validates_attachment_content_type :attachment, /^image.*/, :message => "Your error message"
这将为用户生成一个理智的错误,而不是神秘的ImageMagick错误。或者,如果您希望用户能够上传任何文件类型,但以某种方式设置样式图像,您可以像这样解决问题:
has_attached_file :attachment, :styles => {:thumbnail => ["89x67!", :jpg]}
before_post_process :image?
def image?
!!(attachment_content_type =~ /^image.*/)
end
这将使得所有上传的图像也会生成89x67大小的缩略图,但如果它不是图像类型,它将跳过处理,因为image?
将返回false ,post_process
将不会执行(但文件仍将上传)。
这增加了以后能够在视图或某事物中说出asset.image?
并决定是在image_tag中呈现它还是作为直接链接(例如)的好处。