ruby
1user.rb 2 3enum status: {user1:0, user2:1}
この状況でのルーティングの条件分岐の仕方が分かりません。
ruby
1Rails.application.routes.draw do 2 3#user1用 4devise_for :テーブル名(ここでstatusカラムのキーの値を取る), controllers:{ sessions: '', passwords: '', registrations: '' } 5 6 #user2用 7devise_for :テーブル名, controllers:{ sessions: 'users/sessions', passwords: 'users/passwords', registrations: 'users/registrations' } 8
Routes.rbで条件分岐をするのか、
または、
Registrations_controller.rbにて、
ruby
1class Users::RegistrationsController < Devise::RegistrationsController 2 # The path used after sign up. 3 def after_sign_up_path_for(resource) 4 super(resource) 5 end 6 7 # The path used after sign up for inactive accounts. 8 def after_inactive_sign_up_path_for(resource) 9 super(resource) 10 end 11end
ここをuser1用とuser2用に条件分岐をするのか。
例えばこの場合ですと、
ruby
1 if user.user1? 2 def after_sign_up_path_for(resource) 3 super(resource) 4 end 5 6 def after_inactive_sign_up_path_for(resource) 7 super(resource) 8 end 9else 10 def after_sign_up_path_for(resource) 11 super(resource) 12 end 13 14 def after_inactive_sign_up_path_for(resource) 15 super(resource) 16 end
のような形ですれば良いのでしょうか?
とにかくstatusカラムのキーのバリューの取り方と条件分岐の方法が皆目見当がつきません。
どなたかお力添え宜しくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/19 07:04