rails で遷移元の URL を取得してリダイレクトする方法を備忘録として残しておく
環境
- ruby: 2.7.6
- rails: 5.2.8.1
仕様
- お気に入り登録のようにDB更新を行いたいが、画面遷移はさせたくない
(遷移元が複数ある かつ ユーザビリティ的に良くない)ため - 画面遷移させないようにしたい
実際のソース
controller の該当アクションを以下のようにする
class FavoritesController < ApplicationController
def create
redirect_back fallback_location: root_path
end
end
# 以下も上手くいくが referer が取得できなかった場合を考えると上が良さそう
class FavoritesController < ApplicationController
def create
redirect_to request.referer
end
end