我在 Ruby on Rails 应用程序中有以下情况:
- 用户填写表单(评论),可以看到一个omniauth 页面,她可以在其中选择身份验证方法(openId、Twitter、Facebook 等)。
- 填写omniauth,成功后用户返回,获取会话并处理初始表单数据(发布评论)。
我都在工作,除了我的逻辑散布在我认为的丑陋方式中;SessionsController
现在创建关于成功认证的评论。
什么是解耦这样的事情的好方法?模块是否应该Comment
挂钩(监听)SessionsController?或者 SessionsController 是否应该简单地调用CommentsController
orComment
类上的一些方法来保存对成功身份验证的评论?是否有任何我可以让自己熟悉的模式来解决这些问题?