2010-04-07 5 views
1

BlogPost에 대한 모든 기본 CRUD 메소드가있는 BlogPostsController라는 BlogPost 및 컨트롤러라는 모델을 사용했습니다.컨트롤러가 레일즈에서 모델 이름과 같지 않음

/blog_posts/post-name 대신 /blog/post-name과 같은 URL을 사용자에게 라우팅하고 일반 URL /blog_posts에서 "사용 중지"하는 방법을 이해하려고합니다. 내 컨트롤러의 이름을 변경해야합니까? 아니면 경로를 변경해야합니까 (및 방법)?

답변

5

업데이트 당신의 경로와 나는 그가 그렇게,`/ blog`를 원하는 생각

map.resources :blog_posts, :as => 'blogs' 
+1

블로그 포스트 자원 경로에 :as 옵션을 추가 => '블로그'로 - 복수 형태는보다 전통적인하지만 레일 ... – zetetic

+0

@ zetetic; 그래, 나는 그것에 대해서도 생각했다. 아마 'posts'가 더 나은 리소스 이름이다. – Corey

+0

"/ blog/posts"가 필요했다. :) 그래서 route : map.namespace : blog do | blog |에서 namespace를 만들었고 blog.resources : posts, : 컨트롤러 => 'blog_posts'do | blog_posts | ... – Vitaly

관련 문제