ユーザーログインサンプル
rails new xxxx
GemFileでbcrypt有効にし、bundle install
- モデル作成
rails g model user name:string password_digest:string
rake db:migrate
app/models/user.rbにhas_secure_password追記
- コントローラー作成
rails g controller sessions
app/controllers/sessions_controller.rb
class SessionsController < ApplicationController
protect_from_forgery with: :null_session
def add_user
user = User.new
user.name = params[:name]
user.password = params[:pass]
user.password_confirmation = params[:pass]
user.save
render text: “OK”
end
def create
user = User.find_by_name params[:name]
if user && user.authenticate(params[:pass])
session[:user_id] = user.id
render text: session[:user_id]
else
render “NG”
end
end
def destroy
session[:user_id] = nil
redirect_to root_path
end
end
- ルーティング設定
config/routes.rb
・サーバー起動
rails s