我有这个验证:
if self.var_a.blank? || self.var_b.blank? || self.var_c.blank?
self.errors[:base] << "Error."
end
如果三个变量都设置了或者三个都没有设置,一切都ok。 但是,如果设置了这 3 个中的一个或 2 of 3,我需要显示错误。
我有一段时间在为这个问题而苦恼,但无法有效地写出来。
最佳答案
if [var_a,var_b,var_c].any?{|m| m.blank?}
self.errors[:base] << "Error."
end
或
self.errors[:base] << "Error." if [var_a,var_b,var_c].any?(&:blank?)
关于ruby-on-rails - 如何在 ruby 测试中写出三个变量中至少有一个为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19987087/