2012-01-05 4 views
1

저는 레일스를 처음 사용하고 여러 가지 다른 유형의 사용자를 포함 할 시스템을 개발하려고합니다. 이 영역을 분리하기 위해 네임 스페이스를 사용하려고하지만 모델을 공유하고 싶습니다. 나는 사용자 객체를 만들었고 관리자 네임 스페이스에서 편집 할 수 있기를 원합니다. 내가 관리자 :: UserController을 스캐 폴딩과 같은 경로를 정의했다 : 나는 그것을 잘 보여줍니다 admin/users로 이동하지만, '사용자 만들기'를 클릭하면중복 된 리소스 이름이있는 네임 스페이스

namespace :admin do 
    resources :users 
end 

root :to => "home#index" 

는 찾을 수 없습니다라고, 나에게 NoMethodError했다 경로 users_path. 검색 후 나는 내 routes.rb를 업데이트 할 필요가 실현 : 지금은 admin/users/new 형태로 얻을 수

resources :users 

namespace :admin do 
    resources :users 
end 

root :to => "home#index" 

,하지만 난 게시 할 때 그것은 /users로 복귀하려고합니다. 내 두 가지 질문은 다음과 같습니다. 1. 나는 어떻게이 일을 할 수 있습니까? 그리고 2. 나는 이런 방식으로 네임 스페이스를 올바르게 사용하려고 시도하고있다.

답변

2

/admin/users/users에 대해 생성 된 경로가 있습니다. Admin::UsersController을 사용하려면 admin_users_path을 사용하고 UsersController을 사용하려면 양식에 users_path을 사용하십시오.

생성 된 경로의 이름이 궁금한 경우 rake routes 명령을 사용하는 것이 좋습니다.

관련 문제