我正在尝试验证我的视频是否只允许上传 .mp4 视频。我正在使用 Shrine 来执行此操作。没有验证的视频上传没有问题,但是如果我添加验证代码,则会显示错误:Video isn't of allowed type (allowed types: video/mp4)
这是我的代码:
video_uploader.rb
require "streamio-ffmpeg"
class VideoUploader < Shrine
plugin :processing
plugin :versions
plugin :determine_mime_type
plugin :cached_attachment_data
plugin :remove_attachment
plugin :add_metadata
add_metadata do |io|
video = FFMPEG::Movie.new(io.path)
{ "duration" => video.duration}
end
metadata_method :duration
Attacher.validate do
validate_max_size 200.megabyte, message: "is too large (max is 1 MB)"
validate_mime_type_inclusion ['video/mp4']
end
end
我要上传的视频绝对是 .mp4 文件,我的image_uploader.rb
文件中有这个确切的验证,所以我不确定为什么它不能与我的 .mp4 文件一起使用video_uploader.rb
。有任何想法吗?