当使用 OmniAuth(任何策略)创建新用户时,我必须运行一些代码(订阅外部邮件列表)。该设置与 Ryan Bates 的截屏视频几乎相同:
http://railscasts.com/episodes/241-simple-omniauth?view=asciicast
到目前为止,我还没有找到一个合适的点来挂钩中间件的代码。当控制权返回到 Rails 级别时,数据被传递为user = User.from_omniauth(env["omniauth.auth"])
,没有任何东西表明用户是否刚刚创建。
解决方法可能是用户上的一个标志,该标志默认为 false,并在 session#create 中设置为 true。但是必须有更好的方法,不是吗?:-)
感谢您的提示!