在Rails 4中,我如何创建接受URL参数的路由关注点?我的路线文件中有以下内容:
concern :votable do
get 'vote/:vote_type'
end
resources :parking_locations, concerns: :votable
我希望能够点击以下网址:
/parking_locations/123/vote/0
/parking_locations/123/vote/1
/parking_locations/123/vote/2
但是,当我尝试初始化我的应用程序时,出现以下错误:
Missing :action key on routes definition, please check your routes.
如果我将问题改为:
concern :votable do
get 'vote'
end
然后应用程序正常工作并路由到控制器vote
方法,但当然我无法再通过URL中的vote_type
。是否可以设置接受参数的关注点?
答案 0 :(得分:1)
如错误所述,您需要指定要点击的:action
。以下应该有效
concern :votable do
get 'vote/:vote_type', action: :vote
end
resources :parking_locations, concerns: :votable
这将触及vote
的{{1}}操作,您可以访问ParkingLocationsController
参数。