Автоматически генерировать маркер подлинности Devise при регистрации - PullRequest
9 голосов
/ 06 марта 2012

В настоящее время у меня есть приложение, которое использует обычную проверку подлинности Devise для входа в систему и выхода из нее, но использует модуль token_authenticatable Devise для создания уникального токена, который используется при отправке данных в приложение из букмарклета. Каждый пользователь получает уникальный букмарклет со своим токеном подлинности, запеченным прямо в JavaScript. Однако, поскольку Devise настроен в данный момент, у пользователя нет токена авторизации по умолчанию. Они должны перейти на страницу / edit / users, нажать «Generate Token» и затем они есть в базе данных.

Мне нужен способ, чтобы Devise автоматически генерировал токен авторизации для каждого пользователя при регистрации.

Я новичок, и я не уверен, где найти контроллеры Devise для редактирования, и даже если бы я мог их найти, я не совсем уверен, что я буду делать. Любая помощь приветствуется! Спасибо.

1 Ответ

15 голосов
/ 06 марта 2012

Вы можете использовать вспомогательный модуль ensure_authentication_token из Devise::Models::TokenAuthenticatable.

Так что ваш класс User может выглядеть следующим образом:

class User < ActiveRecord::Base
  devise :database_authenticatable

  before_save :ensure_authentication_token
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...