2013-04-11 131 views
2

我目前設置多條航線上,像這樣:設置:默認路由集羣

post '/create', :to => 'reports#create', :defaults => {:format => 'json'} 
    get '/all', :to => 'reports#index', :defaults => {:format => 'json'} 
    delete '/:id', :to => 'reports#destroy', :defaults => {:format => 'json'} 
    get '/:id', :to => 'reports#show', :defaults => {:format => 'json'} 
    root :to => 'reports#index', :defaults => {:format => 'json'} 

,我想知道是否有任何的方式來設置:defaults => {:format => 'json'}所有在此羣集中的路線,而不必寫出每一個。

回答

2

嘗試這樣:

defaults { :format => :json } do 
    post '/create', :to => 'reports#create' 
    get '/all', :to => 'reports#index' 
    delete '/:id', :to => 'reports#destroy' 
    get '/:id', :to => 'reports#show' 
    root :to => 'reports#index' 
end 

資源: http://api.rubyonrails.org/classes/ActionDispatch/Routing/Mapper/Scoping.html#method-i-defaults

+0

這是完美的。這是Rails 4的新增功能嗎? – RileyE 2014-08-07 18:00:16

+0

這很不錯:)它至少在2010年3月26日之前就已經在那裏了。 – w1zeman1p 2014-08-07 18:24:01