Ajout d'une gemme appelée devise au gemfile.
gemfile
gem 'devise'
Dans le terminal, accédez au répertoire approprié (exemple cette fois) et Installez Gem avec "bundle install" puis Exécutez "rails g devise: install" pour créer un fichier de configuration de périphérique.
Terminal
$ cd ~/projects/sample
$ bundle install
$ rails g devise:install
** Fichier nouvellement créé **
Si vous pouvez confirmer que le fichier a été créé, Créons un modèle utilisateur avec la commande de création de modèle de devise.
Terminal
rails g devise user
** Fichier nouvellement créé **
De plus, les itinéraires suivants sont automatiquement ajoutés à route.rb.
config/routes.rb
devise_for :users
devise_for est une méthode de conception qui génère le routage requis pour les fonctions utilisateur à la fois.
Si vous souhaitez ajouter une colonne de pseudonymes à la table des utilisateurs, ajoutez-la au fichier de migration. Si vous souhaitez ajouter une fonction de recherche par pseudonyme, collez également l'index.
Fichier de migration
class DeviseCreateUsers < ActiveRecord::Migration[5.0]
def change
create_table :users do |t|
## Database authenticatable
t.string :nickname, null: false
t.string :email, null: false, default: ""
t.string :encrypted_password, null: false, default: ""
#~ abrégé ~
end
#Plus tard, lors de l'implémentation de la fonction de recherche et de la recherche avec la colonne surnom, ajoutez également ce qui suit.
add_index :users, :nickname, unique: true
#~ abrégé ~
Assurez-vous que le fichier modèle est également validé correctement.
app/models/user.rb
class User < ApplicationRecord
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :validatable
validates :nickname, presence: true, uniqueness: true
end
Exécutez ensuite la migration dans le terminal.
Terminal
rails db:migrate
Lorsque la fonction de connexion est implémentée à l'aide de devise, la manière de recevoir les paramètres est différente de celle habituelle. Les paramètres forts qui limitent les paramètres envoyés lors de la connexion ne peuvent pas être modifiés car ils sont décrits dans le dispositif Gem. Par conséquent, utilisez la "méthode ** configure_permitted_parameters **" fournie par l'appareil pour permettre au formulaire de recevoir la valeur de la colonne surnom.
app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
before_action :configure_permitted_parameters, if: :devise_controller?
protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:nickname])
end
end
Maintenant que vous avez autorisé l'envoi de la valeur à la colonne des surnoms, modifiez le fichier de vue pour ajouter le formulaire de surnoms à l'écran d'inscription. Pour apporter des modifications au fichier de vue, vous devez utiliser la commande devise pour générer le fichier de vue.
Terminal
$ rails g devise:views
Avec le travail ci-dessus, nous avons pu générer un fichier de vue pour concevoir. Modifiez le fichier de vue généré pour ajouter un formulaire de pseudo à l'écran d'inscription et modifiez la mise en page à votre guise.
L'écran d'inscription est
L'écran de connexion est
Le fichier de vue est pris en charge.
C'est la fin de l'explication de l'introduction de la devise.
Recommended Posts