Добавить столбец к модели User
: allowed_to_log_in
.
Затем добавьте это к /app/models/user.rb
:
def active_for_authentication?
super and self.allowed_to_log_in?
end
Если вы хотите сообщить пользователю специальное сообщение, вы также можете добавить это:
def inactive_message
"You are not allowed to log in."
end
Я думаю, что это очень важно, потому что стандартное сообщение от Devise гласит:
"Ваш аккаунт еще не активирован."
Это сбивает с толку пользователей, и настоящая причина в том, что вы "запретили" им вход в систему.