Concevoir est désormais compatible avec les Rails 4 de la boîte au moment de cette réponse.
Notre but final est d'avoir des utilisateurs pourront s'inscrire, se connecter et se déconnecter du site. Nous allons également créer une petite vue partielle de nous faire savoir si nous sommes connectés au ou à l'extérieur.
Installer le dispositif de gem.
Ouvrez votre Gemfile
et d'installer le dispositif de gem.
gem 'devise'
Ensuite, dans votre terminal, exécutez l' bundle install
de commande pour installer le gem.
$ bundle install
Exécuter certaines Concevoir des générateurs pour définir les configurations initiales.
Exécuter cette commande à partir de votre terminal:
rails generate devise:install
Ce générateur installe l'initialiseur, qui configure tous de Concevoir de paramètres disponibles.
Générer de l'Utilisateur de votre modèle.
Ensuite, nous avons besoin de générer de notre modèle d'Utilisateur. Je vais le nommer User
mais vous pouvez l'appeler ce que vous voulez, il suffit de remplacer User
avec Whatever
.
rails generate devise User
rake db:migrate
Configurer votre URL par défaut de l'option pour le Développement.rb
À l'intérieur de l' config/environments/development.rb
, définissez l'Action Mailer par défaut de l'URL localhost:
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
Assurez-vous d'avoir une racine de l'itinéraire déclaré dans les Itinéraires.rb
Vous devez assurez-vous que routes.rb
a une racine par défaut la route - si vous n'en avez pas, il l'!
root to: 'home#index'
Créer une vue partielle pour voir si nous sommes connecté ou non.
À l'intérieur de votre views/layouts
dossier, créez un fichier nommé _user_widget.html.erb
et copier ce code:
<% if user_signed_in? %>
<p>Welcome <%= current_user.email %></p>
<%= link_to 'Logged In [click to logout]', destroy_user_session_path, :method => :delete %>
<% else %>
<p>You are not signed in.</p>
<%= link_to 'Login', new_user_session_path %>
<% end %>
Et à l'appeler au sein de votre structure (views/layouts/application.html.erb
):
<!DOCTYPE html>
<html>
<head>
<title>FacebookAuthTest</title>
<%= stylesheet_link_tag "application", media: "all" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
</head>
<body>
<p class="notice"><%= notice %></p>
<p class="alert"><%= alert %></p>
<%= yield %>
<%= render 'layouts/user_widget' %>
</body>
</html>
Assurez-vous que vous arrêtez et redémarrez le serveur sinon, vous trouverez toutes sortes de méchants bugs! Il est toujours préférable de redémarrer votre local
serveur lorsque vous mettez à jour votre gemfile ou de changer quoi que ce soit dans le
environnement de fichier de configuration.
Avec tout cela en place, vous devriez être en mesure de vous inscrire, vous connecter et vous déconnecter de votre très propre Rails de site web.
Si vous avez des questions n'hésitez pas à laisser un commentaire ci-dessous et je vais essayer de l'aider.