Мое приложение rails (использующее Devise для аутентификации) позволяет пользователю зарегистрироваться без каких-либо проблем (оно отображает сообщение об успехе и позволяет новому пользователю использовать приложение во время этого сеанса), однако, если пользователь выходит из системы, он может не входите снова (во флэш-сообщении написано «Неверный адрес электронной почты или пароль»).
При просмотре в базе данных причина этого выглядит ясной: пользователь был сохранен в таблице Users (там есть его имя и адрес электронной почты из формы регистрации), но в столбце encrypted_password ничего нет.
Есть идеи, что может быть причиной этого? Я надеюсь, что это что-то глупое и очевидное, что я не вижу недостатка сна. ;)
У меня есть сгенерированные представления для устройства, а также контроллер регистрации. Но переименование их и удаление любых ссылок на них в маршрутах .rb не решает проблему.
Материал для разработки и регистрации пользователей из моей модели User выглядит так:
require 'digest'
class User < ActiveRecord::Base
#### DEVISE MODULES #### Others available are:
#### :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
validates_presence_of :name
validates_uniqueness_of :name, :email, :case_sensitive => false
attr_accessor :password
attr_accessible :name, :email, :password, :password_confirmation, :remember_me
Вероятно, стоит отметить, что я перешел на Devise с пользовательской системы аутентификации (построенной по старому учебнику Rails).