在我的Rails网络应用程序中,我必须上传音频和视频文件,并针对无效文件类型进行验证,我使用过{ {1}}我可以成功地做同样的事情。但是,如果我创建了一个文本文件并将扩展名从jquery-validation engine
更改为.txt
,例如.mp3
到test.txt
,它将被jquery验证引擎视为有效,因为文件扩展名对音频有效。
我也要查看内容类型。当我在播放器中打开test.mp3
时,它会向我显示错误消息test.mp3
。我希望在界面中执行这种验证。在Rails中有可能吗?
我正在使用,
Stream contains no data
希望有人能帮助我。谢谢:) -
答案 0 :(得分:2)
我建议您检查paperclip gem其Active Record的文件附件库。该库非常易于使用,并对每种内容类型进行验证。例如,如果您想通过下一次验证验证图像:
class User < ActiveRecord::Base
attr_accessible :avatar
has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
validates_attachment :avatar,
:presence => true, :content_type => { :content_type => "image/jpg" },
:size => { :in => 0..500.kilobytes }
end
希望它有所帮助。