ruby-on-rails - 跳过载波完整性和处理验证

标签 ruby-on-rails ruby ruby-on-rails-3 rubygems carrierwave

我已经将 carrierwave uploader 类中的一些扩展列入白名单

def extension_white_list
    %w(doc docx)
end

在某些情况下,我想在保存记录时跳过完整性验证。但根据他们的文档,validates_integrity_of 验证默认存在。

https://github.com/carrierwaveuploader/carrierwave/wiki/How-to%3A-Validate-uploads-with-Active-Record

谁能告诉我如何跳过这样的验证?

最佳答案

uploaders/file_uploader.rb

def extension_white_list
  if model.do_i_need_validation?
    %w(doc docx)
  else
   file.extension
  end
end

并在模型中定义这个实例方法

def do_i_need_validation?
  condition? ? true : false
end

替换适合自己app的方法内容即可

关于ruby-on-rails - 跳过载波完整性和处理验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17233816/

相关文章:

ruby-on-rails - 使用 mongodb 嵌套字段

css - Bootstrap btn-group-vertical pull-right 显示在 Rails 应用程序中的响应式导航栏图像下方

mysql - 无法选择按created_at分组的行

ruby-on-rails - 如何在routes.rb中添加别名

ruby-on-rails - 将 after_validation 与 if 或子句一起使用

ruby-on-rails - 如何将我自己的爬虫集成到 Rails 应用程序中?

javascript - 我可以从其他页面加载表单吗?

Ruby、类和继承

ruby-on-rails-3 - Heroku 和 MongoHQ: ActionView::Template::Error (操作: #<Moped::Protocol::Commands::Authenticate 失败,错误 "auth fails")

ruby-on-rails - 使用 Rails 3 link_to 执行 ajax 回调的正确方法是什么