【发布时间】:2011-04-26 05:36:54
【问题描述】:
我在 rails 中使用了 restful 身份验证插件,我需要跳过授权并立即将用户登录...如何做到这一点
任何想法都将受到高度赞赏
【问题讨论】:
标签: ruby-on-rails ruby restful-authentication
我在 rails 中使用了 restful 身份验证插件,我需要跳过授权并立即将用户登录...如何做到这一点
任何想法都将受到高度赞赏
【问题讨论】:
标签: ruby-on-rails ruby restful-authentication
如果我没记错的话,您可以安装 Restful Authentication 而无需激活。为此,只需执行以下操作:
script/generate authenticated user sessions
但是,如果您需要激活,那么您可以这样做:
script/generate authenticated user sessions --include-activation
并创建 ActionMailer 代码。
因此,您可以采取的第一个方向就是一开始就不要要求任何激活机制。如果您确实需要激活,但只想在某些情况下避免激活,您需要了解激活的工作原理。我真的建议阅读这里的代码,但它非常基础。有一个名为activated 的列,如果为真,则激活用户。理论上,您可以简单地将其设置为 true 并继续前进。
登录用户也可以在代码中查找。最简单的方法是将 session[:current_user] 设置为您刚刚创建的用户的 ID。
然后...首先编写测试。当测试通过时,你就知道你有正确的解决方案:)
【讨论】:
在 after_create 回调中编写激活方法。代码取决于您的 gem/plugin。在大多数 gem 中,它类似于 user.activate 。或者构建您的自定义方法,取消激活码,更新activated_at,并在after_create回调中调用此方法。
【讨论】: