是否可以通过rake任务了解模型是否正在保存/创建/更新?例如,如果模型由rake任务保存,我需要禁用before_save回调。谢谢!
答案 0 :(得分:3)
如果您想从possibly use this任务中跳过所有验证。
如果您想有条件地运行验证you can use this并在模型上设置一些值,表明应该跳过验证。
例如,在模型上有一个validate
字段,用于存储是否应该验证该记录。
validates :user_id, presence: true, unless: 'validate == false'
这有点像黑客。
如果你问模型中的代码是否有一些干净的方法来知道它的调用位置...不,不是我所知道的。使用条件验证或提供的其中一种方法来跳过特殊情况的验证。