0

我是 Ruby on Rails(rails 3)的新手。我有一个包含三个字段的表单,在这三个字段中,一个字段是上传文件(rar/tar/zip)。我想知道验证(服务器端)这种允许用户的表单的方法:-

1. Fill in all three fields.
2. Uploaded file should be either rar/tar/zip.
3. Uploaded file should not exceed 2MB in size.
4

3 回答 3

1

您可以使用回形针 gem 上传文件。

class User < ActiveRecord::Base
  attr_accessible :avatar
  has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" }
end

有类似的验证

validates_attachment :avatar, :presence => true,
  :content_type => { :content_type => "image/jpg" },
  :size => { :in => 0..10.kilobytes}

有关更多信息,请参阅https://github.com/thoughtbot/paperclip

于 2013-02-11T05:57:47.337 回答
1

您可以使用此代码,要使用此代码,您必须使用回形针 gem

validates_attachment_size :upload, :less_than => 2.megabytes,
                  :with => %r{\.(rar|tar|zip)$}i
于 2013-02-11T05:59:22.600 回答
0

验证存在

验证格式

对于大小,我认为您可以从 Rails 指南中找出一些东西,或者只是通过谷歌搜索。

为了澄清,在用户正在更新的模型中,您希望对三个属性进行存在验证(如该链接中所述)。然后是 zip 文件字段的格式验证。同样对于大小,当您找到或创建适当的验证时。

于 2013-02-11T05:56:43.460 回答