1. ホーム
  2. ruby-on-rails

[解決済み】Railsで現在のルートを調べるには?

2022-04-04 10:35:34

質問

Railsのフィルターで現在のルートを知りたいのですが、どうすればいいですか?どうすれば知ることができますか?

RESTリソースをやっていますが、名前付きルートが見当たりません。

どうすればいいですか?

URIを調べる。

current_uri = request.env['PATH_INFO']
# If you are browsing http://example.com/my/test/path, 
# then above line will yield current_uri as "/my/test/path"

ルート、すなわちコントローラ、アクション、パラメータを検索します。

path = ActionController::Routing::Routes.recognize_path "/your/path/here/"

# ...or newer Rails versions:
#
path = Rails.application.routes.recognize_path('/your/path/here')

controller = path[:controller]
action = path[:action]
# You will most certainly know that params are available in 'params' hash