2011-04-25 2 views
6

나는 여러 가지면에서 접근 할 수있는 모델의 모델이 있습니다 하위 도메인에 의해 또는 토큰경로 선언 (하위 도메인 또는 토큰)을 병합하려면 어떻게해야합니까?

을 내가 가지고있는 다음과 같은 경로

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 

그래서 현재 두 가지 경우에 대한 모든 경로를 복제해야합니다.

한 번만 선언 할 수있는 방법이 있습니까?

답변

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 

관련 주제 : Rails 3 Routes: DRY members

관련 문제