【Rails】Deviseでユーザー登録後のリダイレクト先を変更


開発環境--------------------
windows
ruby 2.7.0
Rails 5.2.4.1
●----------------------------
quiitaの他の記事も同様のタイトルがあったのですが、間違いがあってできなかったので、
記事を書いておきます。

大前提

deviseのコントローラーを作成してある
コマンドで以下を打つ

rails g devise:controllers users

やり方はシンプル。
users/registrations_controller.rb
ファイルを以下の通り書き換えるのみ。
(コメントアウトを取り消して、1行だけ修正。)

before

  # The path used after sign up.
  # def after_sign_up_path_for(resource)
  #   super(resource)
  # end

after

  # The path used after sign up.
    def after_sign_up_path_for(resource)
     user_path(resource)  ※修正行
    end

redirect先は、routesで確認しよう。
コマンドで、
rails routes
と打つと、詳細が出てきます。

僕の場合、user/showでマイページを作成しているので、そこにredirectさせたかったので、
routesで調べたら、

|Prefix  |Verb |URI Pattern  |Controller#Action

|user |GET |/users/:id(.:format) |users#show

と設定されているので、
user_pathでusers#show が行われる。

よって、上記に変更でOK