gpt4 book ai didi

ruby-on-rails - 设计再确认 Hook

转载 作者:行者123 更新时间:2023-12-04 05:52:54 25 4
gpt4 key购买 nike

这个问题与Rails Devise: after_confirmation非常相似除了我正在寻找更具体的重新确认 Hook

我的用例:我需要在某些第三方服务(准确地说是对讲机)上同步新用户电子邮件。

我有一个使用 API 的第一个实现,我在其中放置了我需要的逻辑(全部整理在服务中)

但是,我经常最终使用控制台进行大量维护,想到的最明显的事情就是执行

user.email = 'newemail@example.com'
user.confirm # or skip_reconfirmation
user.save

使用它,我不会自动触发我的重新同步逻辑。有没有办法强制进行一些重新确认回调?重写 after_confirmation 似乎不起作用

最佳答案

不是真正的答案,但与此同时,我用以下内容对我的用户类进行了 monkeypatched(其中 xxx 代表添加到用户类上的一些自定义方法,用于将新电子邮件同步到第三方服务)

class User
include User::Console if defined?('Rails::Console')
end

module User::Console
extend ActiveSupport::Concern

included do
## Override Devise confirmable to add warnings

def confirmation_warning
puts "WARNING !!".red
puts "calling `#confirm` or `#skip_reconfirmation!` on the user does not sync to xxx !\n"\
'Please either use [Name of custom confirmation service], '\
'or use `user.sync_to_xxx` to propagate changes'.red
end

def confirm
confirmation_warning
super
end

def skip_reconfirmation!
confirmation_warning
super
end
end
end

关于ruby-on-rails - 设计再确认 Hook ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50723109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com