Devise - Bloqueando O Acesso Do Usuário Ao Sistema
O Devise tem um método chamado active_for_authentication, o qual dá permissão ao usuário de logar no sistema. Vamos sobrescreve-lo no model User e assim termos o poder de bloquear um usuário. Antes de ir ao código vamos escrever o teste:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
O teste simplesmente nos mostra uma mensagem se o usuario não tiver permissão de login, agora vamos coda. Criamos uma migration adicionando um campo com o nome de active do tipo boolean:
rails g migration Add_active_To_User active:boolean
rails rake db:migrate
Agora adicionamos o método active_for_authentication, bem como o inactive_message, que irá exibir uma mensagem se o usuário estiver bloquedo. Isso dentro do model User, não esqueça.
1 2 3 4 5 6 7 8 9 |
|
Simples e fácil, agora é so fazer uma action para ficar mudando de false para true o campo active.