cha*_*doh 3 rest routing ruby-on-rails crud ruby-on-rails-3
众所周知,一个简单的
resources :meetings
Run Code Online (Sandbox Code Playgroud)
将为我产生7个动作。其中两个是index
和create
。关于这两个的一个非常酷的事情!:两者的URL是/meetings
,但是当我GET时,/meetings
我被路由到该def index
动作,而当我发布时/meetings
,我被路由到该def create
动作。真好
现在我要这样做:
resources :meetings do
member do
get 'scores'
post 'scores'
end
end
Run Code Online (Sandbox Code Playgroud)
而且,您猜对了!,我希望它们路由至以下不同的操作MeetingsController
:GETting /meetings/1/scores
将路由至def scores
,POSTPOST meetings/1/scores
将路由至def create_scores
。
尝试:
resources :meetings do
member do
get 'scores' => :scores
post 'scores' => :create_scores
end
end
Run Code Online (Sandbox Code Playgroud)
我想您也会对命名路由感兴趣:
resources :meetings do
member do
get 'scores' => :scores, :as => 'scores_of'
post 'scores' => :create_scores, :as => 'create_scores_of'
end
end
Run Code Online (Sandbox Code Playgroud)
然后,你scores_of_meeting_path
和create_scores_of_meeting_path
助手。
以上内容可通过以下方法进一步干燥:
get :scores, :as => 'scores_of'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1477 次 |
最近记录: |