RoR:模型验证问题

时间:2008-10-02 13:36:30

标签: ruby-on-rails ruby

我有一个基本的ActiveRecord模型,其中我有两个我想要验证的字段。要求是至少有一个字段必须具有值。两者都可以有值,但至少有一个需要值。

我如何用

表达这一点
validates_presence_of 

语句?例如:

validates_presence_of :main_file
validates_presence_of :alt_file

我不希望只有其中一个为空时才会生成错误,只有两者都为空时才会生成错误。

2 个答案:

答案 0 :(得分:5)

validates_presence_of :main_file, :if => Proc.new { |p| p.alt_file.blank? }
validates_presence_of :alt_file, :if => Proc.new { |p| p.main_file.blank? }

答案 1 :(得分:3)

改变.nil?到.blank?诀窍!