mam tę drogę:Brak odpowiednika trasa w specyfikacji kontrolera dla mojej skomplikowanej trasie
resources :items, path: 'feed', only: [:index], defaults: { variant: :feed }
który jest zagnieżdżony w API i v1 nazw. (Parametry request_source pochodzą z przestrzeni nazw Api).
Chcę przetestować działanie indeksu w mojej specyfikacji kontrolera. Próbowałem:
get :feed, community_id: community.id, :request_source=>"api"
nie działa, i tak robi:
get :index, community_id: community.id, :request_source=>"api", variant: 'feed'
mówiąc:
ActionController::RoutingError:
No route matches {:community_id=>"14", :request_source=>"api", :variant=>"feed", :controller=>"api/v1/items"}
EDIT ------- -------- -
powodem chcę użyć wariantu wysłać params do sterownika jest bo mam wszystkie te trasy:
resources :items, path: 'feed', only: [:index], defaults: { variant: 'feed' }
resources :items, path: 'popular', only: [:index], defaults: { variant: 'popular' }
Następnie w ItemsController, mam przed Filter "get_items" dla akcji index wich robi:
def get_items
if params[:variant] == 'feed'
....
elsif params[:variant] == 'popular'
....
end
Jaka jest backtrace na wyjątku? –