我有一个模型,用户有n,:accounts
我希望在该实例没有任何关联帐户时验证User模型中是否存在2列(email& passwd)。想法是用Facebook注册的用户不需要使用电子邮件和密码。
现在我有这个,但我被困了
validates_presence_of :email, :passwd, :if => lambda { |u| u.accounts.length }
答案 0 :(得分:0)
试试:if => proc { |user| user.accounts.empty? }
。请记住,只有零和假是红宝石中的假值。在irb中尝试!!0
,结果为true。 u.accounts.length
总是如此。 (也是零长度)。