[英]Why AR callbacks are not triggered for `Version`s created by paper_trail?
我试图通过paper_trail每次创建一个Version时都通过在同一模型上设置回调来做一些事情,但是它不起作用。
我正在使用Rails v6.0.0.beta3和paper_trail v10.3.0。 我尝试手动创建Version( Version.create
),它可以工作。
class Version
after_commit :do_something, on: :create
private
def do_something
p('doing something') # never gets called
end
end
class SomeModel
has_paper_trail
end
# creates both SomeModel and a Version but version's callbacks
# are not called/executed.
SomeModel.create
我希望Version#do_something
被调用,但从未发生。
这里的问题是Version与PaperTrail :: Version不同,它似乎受支持的机制是创建一个模块,并将其传递给See Here或创建自己的类See Here – Engineersmnky
@engineersmnky,您说得对,因为我使用的是自定义类,因此必须将class_name指定为has_paper_trail版本:{class_name:'Version'}。 非常感谢! –赫克托·巴斯克斯(HéctorVásquez)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.