routes
1get 'password_resets/edit' 2 3get 'sessions/new' 4 5root 'static_pages#home' 6get '/help', to: 'static_pages#help' 7get '/about', to: 'static_pages#about' 8get '/contact', to: 'static_pages#contact' 9get '/signup', to: 'users#new' 10post '/signup', to: 'users#create' 11get '/login', to: 'sessions#new' 12post '/login', to: 'sessions#create' 13delete '/logout', to: 'sessions#destroy' 14resources :users 15resources :account_activations , only: [:edit] 16resources :password_resets, only: [:new, :create, :edit, :update]
gemのdeviseを使用せずにuser登録を実装した場合、
名前付きルーティングでsignup_pathを作成し、
homeのビューに
ruby
1<%= link_to "ユーザー新規作成", signup_path, class: "btn btn-lg btn-primary" %>
'users#new'にアクセスするpathを貼る事で
サインアップをする前に
ruby
1root 'static_pages#home'
このルーティングのページに遷移し、homeビューのリンクからユーザー登録できるという仕様を実装できるのは理解できるのですが、
gemのdeviseを使った際は、
ユーザーがサインアップをしないとrootのビューに遷移しません。
これをrootのビューにdevise用のユーザー登録をするリンクを貼ってそこからユーザー登録することは可能でしょうか。
因みに、deviseでユーザー登録を実装した際にroot画面でこのように記述したところクリックしてもnew_user_registration_pathに遷移しませんでした。
ruby
1= link_to "User", new_user_registration_path , class: "btn btn-lg btn-second"
ターミナルにはこのようなsql文が発行されており、userのid=1を検索しているようです。
sql
1User Load (0.2ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1
どのようにすればdeviseで実装した際にrootのビューからユーザー登録画面に遷移できるのでしょうか?
長文になってしまい申し訳ございません。
何卒宜しくお願い致します。
あなたの回答
tips
プレビュー