Login Devise Com Facebook
Acabaram de me pedir para mudar um sistema para logar com facebook, aproveitei e fiz logo um post lol.
Já que o sistema usava devise lol mamão com açucar.
Adicione essas gems no arquivo gemfile.
1 2 |
|
Agora vamos criar um controller para fazer o trabalho de login, crie um diretório users e logo em seguida um controller com nome omniauth_callbacks_controller dentro da pasta. Segue o código:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
Vamos adicionar o método find_for_facebook_oauth dentro do model User.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
Não esqueça de habilitar a opção :omniauthable do devise no model User.
Vamos colocar as rotas no arquivo routes.rb
1 2 3 4 |
|
Agora abra o arquivo devise.rb que esta em config/initializers e bem no final habilite a opção abaixo:
config.omniauth :facebook, 'APP_ID', 'APP_SECRET'
Pegando sua APP_ID e APP_SECRET
Vá ate esse endereço https://developers.facebook.com/apps e clique no menu aplicativos depois em criar novo aplicativo de um nome para ele e clique em continuar.
Selecione o aplicativo e clique em editar aplicativo, na opção App Domain coloque:
Ex.: dominio.com.br
Clique em Website e coloque o endereço da aplicação
Ex.: http://dominio.com.br/
Agora é so pegar a APP_ID e APP_SECRET e substituir, não esqueça das aspas.
Adicione o link para logar na view e pronto lol.
<%= link_to "Conectar com Facebook", user_omniauth_authorize_path(:facebook) %>