Given a path such as
/foos/123
and a route
get '/foos/:id', as: 'foos'
How to get the ID using Rails routes (reverse) look up?
In this example, path.split('/').last would work, and a regex would be better. But how to use the Rails routes to do it?
This functionality was provided by Rails.application.routes.recognize_path but has been deprecated.
Note: This not part of a controller. Please do not answer about how to use routes within a controller.
Rails 6.
recognize_pathwas ever part of the public API and meant to be used. Maybe I'm wrong, but since this was deprecated I don't think there is other way than you just described with parsing raw URL/pah. Great question, up.