验证,回调

时间:2010-12-07 16:08:53

标签: ruby-on-rails validation callback

我在模型上有一个自定义验证规则,说明用户不能有超过3条状态为活动的记录。

验证:not_over_active_limit,:before => :创建

当我需要更新用户的3个活动记录之一时,会出现问题。当我调用record.update时!或record.save !,抛出验证错误,说我不能有超过三个活动记录。但我只希望验证在before_create上运行,而不是保存!或更新!

我可以通过调用save(false)来解决这个问题,但我不想这样做。

有任何处理建议吗?

1 个答案:

答案 0 :(得分:0)

您正在寻找的代码是

 validate :not_over_active_limit, :on => :create

不是:before而是:on