開発実装 #18
Lunatic1998 さんが約1年前に更新
#### 概要 ##### `config > routes.rb` - URIを指定した際に、コントローラと実行されるアクションを明記している。 URIを指定した際に、コントローラと実行されるメソッドを明記している。 ``` # GET /signup を実行すると、SessionContollerのsignupメソッドが実行 # ユーザーが未ログイン時に、新規登録フォームを表示させたい時に実行される。 + get '/sign_up', as: 'sign_up', to: 'sessions#signup' # GET /signin を実行すると、SessionContollerのsigninメソッドが実行 # ユーザーが未ログイン時に、ログインフォームを表示させたい時に実行される。 + get '/sign_in', as: 'signin', to: 'sessions#signin' # ユーザーが未ログイン時に、。 + get 'auth/sign_in', to: 'auth#signin' ``` ##### `controller > session_contoller.rb` ``` class SessionsController < ApplicationController # ログイン時に実行されるアクション def signin redirect_to cognito_signin_url end # 新規登録時に実行されるアクション def sign_up redirect_to cognito_signup_url end ・・・省略(*1) end ``` - 省略した(*1)の内容を以下に明記。 ``` # 事前に設定したCognitoのクライアントIDを指定 def cognito_signin_url CognitoUrls.login_uri(ENV['AWS_COGNITO_APP_CLIENT_ID'], signin_redirect_uri) end def cognito_signup_url CognitoUrls.signup_uri(ENV['AWS_COGNITO_APP_CLIENT_ID'], signin_redirect_uri) end def signin_redirect_uri return "/auth/sign_in?code=xxxxxxxxxxxxxxxx" end ```