我只想上传小于100MB的zip文件。在参考了一些资源之后,我提到了size 1
,但不确定是1MB,1GB还是究竟是多少?而且我仍然可以上传任意大小的zip文件。
= file_field_tag 'photos_zip_file', accept: '.zip', size: 1
我主要担心的是,是否有办法仅从尾端代码上传特定大小的文件?
答案 0 :(得分:0)
在使用CarrierWave时,我建议添加验证服务器端。
因此,在模型中添加:
validate :size_validation
private
def size_validation
errors[:photo_zip_file] << "should be less than 100MB" if photo_zip_file.size > 100.megabytes
end
希望有帮助。
答案 1 :(得分:0)
def size_range
1..100.megabytes
end
validates :photos_zip_file, file_size: { less_than: 100.megabytes }, file_content_type: { allow: 'application/zip' }