2012-12-04 7 views
0

Rails에서 사용자 뷰를 만들고 route.rb에서 뷰를 정의하는 가장 좋은 방법을 찾으려고합니다.Rails에서 사용자 별 경로를 어떻게 정의합니까?

class UsersController < ApplicationController 
    def event_list_view 
    end 

    def event_map_view 
    end 

    def aggregated_event_view 
    end 
end 
: 그래서 '/ 1// 사용자의 뒤에 오는 엔드 포인트가이 컨트롤러의 또 다른 엔드 포인트 자원 것 아니다

/users/1/event_list_view 
/users/1/event_map_view 
/users/1/aggregated_event_view 

: 나는 경로 이름의 다음과 같은 유형을 가지고 싶어 말

나는 몇 가지 다른 일을 시도하고, 현재 다음을 가지고 있지만 그것을 얻이 수없는 것 :

resources :users do 
     match '/users/:id/event_list_view' => {:action=>"event_list_view", :controller=>"users"} 
     match '/users/:id/event_map_view' => {:action=>"event_map_view", :controller=>"users"} 
     match '/users/:id/aggregated_event_view' => {:action=>"aggregated_event_view", :controller=>"users"} 
    end 

날 내가 잘못 알려주십시오. 감사!

resources :users do 
    member do 
    get 'event_list_view' 
    get 'event_map_view' 
    get 'aggregated_event_view' 
    end 
end 

나는 당신이하려는 정확히 잘 모르겠지만, 그것은 또한 다른 자원 배치를 고려 가치가있을 수 있습니다

답변

2

Member routes 당신은 당신이 원하는 것을 할 수 있도록해야한다. 사용자와 관련된 모든 이벤트를 표시하려는 경우 Event 리소스 (등)에 대한 인덱스 경로를 정의하고 거기에 사용자 매개 변수를 전달하는 것이 좋습니다.

+0

아, 이제 완전히 이해가됩니다. 감사! –

+0

@ RyanShih 내기. 프로젝트에 행운을 빌어 요! – rjz

관련 문제