0

私はこの検証を持っています:

if self.var_a.blank? || self.var_b.blank? || self.var_c.blank?
  self.errors[:base] << "Error." 
end

3 つの変数がすべて設定されている場合、または 3 つすべてが設定されていない場合は、すべて問題ありません。しかし、これらの 3 つまたは 2 つのうちの 1 つが設定されている場合は、エラーを表示する必要があります。

私はしばらくこの問題と戦っていますが、効果的に書くことはできません。

4

2 に答える 2

4
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?)
于 2013-11-14T19:56:36.113 に答える