我有一个启用了纸张跟踪的模型。在我的一个API路由中,我必须运行the_model.update_columns ...
,以便可以修改(并保存)模型实例,而不会触发所有相关的回调(这些回调有很多副作用,我不会这样做。 ; t想要这条特定的路线。)
然而,我仍然希望通过纸质记录记录此更改。我能以合理的方式实现这一目标吗?
答案 0 :(得分:0)
这简单而笨重,但它可以完全按照您的要求完成:
class ThisModel < ActiveRecord::Base
...
def update_me_no_callbacks(att_1, attr_2, attr_3, ...)
self.update_columns(
attr_1: attr_1,
attr_2: attr_2,
attr_3: attr_3,
...
)
# Do paper-trail code
end
end