注册时自动生成Devise Authenticity Token

Bon*_*ion 9 authentication ruby-on-rails devise ruby-on-rails-3

我目前有一个使用常规Devise身份验证登录和注销的应用程序,但使用Devise的token_authenticatable模块创建一个独特的令牌,用于从书签中向应用程序提交数据.每个用户都会获得一个独特的书签,其真实性令牌直接存储在javascript中.但是,当前设置了Devise的方式,默认情况下用户没有身份验证令牌.他们必须转到/ edit/users页面,按"Generate Token"然后他们在db中有一个.

我需要一种方法告诉Devise在注册时自动为每个用户生成一个身份验证令牌.

我是新手,我不知道在哪里找到Devise控制器来编辑它,即使我能找到它们,我也不完全确定我会做什么.欢迎任何帮助!谢谢.

Tru*_* Lê 15

您可以使用辅助ensure_authentication_tokenDevise::Models::TokenAuthenticatable 模块.

所以你的User课可能是这样的:

class User < ActiveRecord::Base
  devise :database_authenticatable

  before_save :ensure_authentication_token
end
Run Code Online (Sandbox Code Playgroud)