2011-04-25 9 views
6

que tienen un modelo de modelo que puede ser el acceso de muchas maneras: por subdominio o una ficha¿Cómo puedo fusionar declaraciones de ruta (subdominio o token)?

tengo las siguientes rutas

resources :model, :constraints => {:model_id => /[a-zA-Z0-9]{4}/} do 
    ... (nested resources...) 
end 
resources :model, :constraints => {:subdomain => /.+/} do 
    ... (same as above: nested resources...) 
end 

So Actualmente tengo que duplicar todas las rutas para los dos casos.

¿Hay alguna manera de declararlo solo una vez?

Respuesta

4
def nested_routes 
    get :some_route 
    post :some route 
    resources :some_resources 
end 

resources :model, :constraints => {:model_id => /[a-zA-Z0-9]{4}/} do 
    nested_routes 
end 

resources :model, :constraints => {:subdomain => /.+/} do 
    nested_routes 
end 

Tema relacionado: Rails 3 Routes: DRY members

Cuestiones relacionadas