嘿,欢迎 ![]()
和 @Stephen 一样,我也不太确定这是否是正确的工具,但我相信你已经充分考虑过了。
我会尽量避免这样做。几乎总有其他解决方案,即使你需要对类进行 monkey patch。关于 Discourse 中的 monkey patch,请参阅:https://meta.discourse.org/t/tips-for-overriding-existing-discourse-methods-in-plugins/83389。
在本例中,似乎你关注的该方法中已有代码实现了你想要的功能:discourse/app/models/invite_redeemer.rb at main · discourse/discourse · GitHub
问题在于你生成的邀请没有正确的 emailed_status_type,因此该条件未通过。我认为这里的解决方案是从一开始就生成不同的邀请。我会将重点放在那里。