设计的签名是做什么的

时间:2017-06-25 13:45:28

标签: ruby-on-rails devise

我正在使用devise进行rails api身份验证,但无法正确理解devise正在为我们做什么。

我有会话控制器,其中包含用于登录用户的创建方法。

{{1}}

在rubydoc上,它的描述就是这样写的

  

登录已经过身份验证的用户。注册后,此助手可用于记录用户。给sign_in的所有选项都传递给warden中的set_user方法。

但我不清楚。感谢。

1 个答案:

答案 0 :(得分:1)

sign_in适用于您已经拥有自己创建或加载/验证的User对象,因此希望在会话中存储为当前其余部分的经过身份验证的用户以及即将到来的请求。

如果您查看source code for the default Devise SessionsController,您会发现它还使用sign_in来登录用户。

设计是一个超过warden的图层,因此您可能需要查看其documentation以了解此级别的功能。正如您引用的Devise文档所述,sign_in只是从warden调用set_user方法。 Devise添加的内容是很多方便,例如使用多个范围和各种监管认证策略的能力。