ruby-on-rails - 帮助理解 validates_each Rails 助手

标签 ruby-on-rails ruby

class User < ActiveRecord::Base 
     validates_each :name, :email do |model, attr, value|
             if value =~ /groucho|harpo|chico/i 
                   model.errors.add(attr, "You can't be serious, #{value}")
              end 
     end
end

对它的工作原理感到困惑。

:name, email 是它将循环的项目吗?

最佳答案

:name:email 是将使用此 block 验证的属性。

因此,每次验证用户时,都会使用 attr = :name 调用该 block 一次,并使用 attr = :email 调用一次(并且每次 value 将保存该属性的值)。

关于ruby-on-rails - 帮助理解 validates_each Rails 助手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3991116/

相关文章:

ruby-on-rails - 依次查找关联为nil的所有记录

ruby-on-rails - Heroku 中的静态只读 SQLite3 数据库

html - 防止用户返回并查看之前提交的表单 Rails

ruby-on-rails - 保留搜索表单数据 Ruby On Rails

ruby - 如何找到运行时调用 Ruby 方法的位置?

javascript - 主干模型 save() 方法不执行任何操作

ruby-on-rails - Google 日历与初始 time_max 增量同步

Ruby:通过模块添加东西来初始化方法

javascript - 使用 id 获取 localStorage 值到其他页面

ruby-on-rails - 为什么 HABTM 上的 "validate"选项不起作用?