例として、このようなroutes.rbファイルがあります
FilePicker::Application.routes.draw do
match "youtube/search/videos/:query(/:maxResults)", :to => "Youtube#youtubeVideos", :via => :get
match "youtube/searchWithToken/:query/:token(/:maxResults)", :to => "Youtube#youtubeTokenPageVideos", :via => :get
root :to => 'home#index'
end
そして、コントローラーとアクションの組み合わせを使用して、ルートを取り戻すことができるようにしたいと考えています。そんな感じ:
class YoutubeController < ApplicationController
def initialize
@routeA = getRoute 'Youtube', 'youtubeVideos'
puts @routeA #=> youtube/search/videos
end
def youtubeVideos
@routeB = getRoute 'Youtube', 'youtubeTokenPageVideos'
puts @routeB #=> youtube/searchWithToken
end
def youtubeTokenPageVideos
...
end
end
これは可能ですか?
編集
request.path
使用される実際のパスが得られるため、解決策ではないと思います。例として、アクションyoutubeVideos
が呼び出されました。ここから、アクションのパスを動的に取得するにはどうすればよいyoutubeTokenPageVideos
ですか? (上記の例も編集しました)