アクセスしたページ毎にリダイレクト先を変えたい
こんにちは、ぐっちと申します。
現在チーム開発中のアプリでは、ユーザーが住所登録をするのですが住所登録が出来るページが2箇所あり、アクションは全く同じなので使い回しをしたい、しかしそれぞれリダイレクト先が違うので、そこはうまく分岐をさせたいと思い色々調べました。
アドレスを登録する addresses#create アクションが動いた時に、アクセスしたページが分かれば分岐出来そうなので、
を使用したら出来るかと思いましたが、これは現在の path を取得するものなので、addresses#create アクションが動いた時のpathは '/addresses' でアクセスしたページに関わらず同じで、分岐させる事は出来ませんでした。
addresses#create アクションを動かした前の path が取得できれば良いのですが、そんな都合のいいものがあるのかと思っていると……ありました。
なんと、遷移元のcontrollerを取得する方法があり
と記述すると、例えばマイページで登録した場合
mypages コントローラで表示させているので、'mypages' が返って来て、
という様に条件に指定出来てリダイレクト先の分岐が出来ました。
調べると本当に色々な事がメソッドによって実現出来て、見つけられるかによってスマートなコードに変わるものだと実感しました。
ここまで読んでくださり、ありがとうございました。
ツイッターで日々の学習をつぶやいています