如何跳过rails中的激活?

时间:2010-10-16 02:26:55

标签: ruby-on-rails ruby restful-authentication

我在rails中使用restful认证插件,我需要跳过授权并立即登录用户......如何做到这一点

任何想法都将受到高度赞赏

2 个答案:

答案 0 :(得分:1)

如果我没记错,您可以在没有激活要求的情况下安装Restful Authentication。要做到这一点,只需:

script/generate authenticated user sessions

但是,如果您需要激活,那么您可以:

script/generate authenticated user sessions --include-activation

并创建了ActionMailer代码。

因此,您可以采取的第一个方向是首先不要求任何激活机制。如果您确实需要激活,但只想在某些情况下避免激活,则需要了解激活的工作原理。我真的建议在这里阅读代码,但它非常基本。有一个名为activated的列,如果是,则激活用户。从理论上讲,你可以简单地将它设置为true并继续前进。

记录用户也是您可以在代码中查找的内容。最简单的方法是将session[:current_user]设置为您刚刚创建的用户的ID。

并且......首先编写测试。当测试通过时,您就知道您有正确的解决方案:)

答案 1 :(得分:0)

在after_create回调中编写激活方法。代码取决于你的gem / plugin。在大多数宝石中,它将像 user.activate 。或者构建自定义方法,取消激活代码,及时更新activated_at并在after_create回调中调用此方法。