2

所以这可能是一个错误。

在我的模型中,在我的orders桌子上,我有一个名为active. 它是一个布尔值,默认为 true。在before_create订单中,我正在做一些逻辑,active如果 XYZ 发生,将设置为 false。

但是,当 XYZ 发生时,它似乎会阻止记录一起保存(没有给我提供任何真正的错误),而不仅仅是将字段设置为 false。

有任何想法吗?

4

2 回答 2

10

如果您在过滤器active = false的末尾设置,before_create过滤器将返回false并停止过滤器执行链,导致保存无法完成。

如果您的代码是这种情况,请在您true的末尾返回,before_create您应该没问题。

于 2012-08-26T00:53:29.320 回答
0

我有同样的问题,我必须在每个 before_create 回调的末尾插入 1==1 或 true 。回调定义中看起来有些奇怪。

于 2016-04-20T13:21:45.563 回答