는 다음 경로가 정당하고 해결하는 것으로 가정합니다 (당신이 말할 수없는 경우)예기치 않은 경로를 어떻게 처리합니까?
http://test.local/wizards/home
http://test.local/wizards/wizardfest2012/dates
http://test.local/dragons/
http://test.local/dragons/blog/stop-slaying-us
http://test.local/
이이 블로그를 포함하는 CMS, 그래서 슬러그의 사용자에 의해 생성 될 수있다. 예약 된 네임 스페이스 (예 : 관리자)를 먼저 처리 할 경로가 있습니다.
사용자 생성 경로가 Page
컨트롤러로 라우팅되어야한다고 가정합니다. 그러나 실제로는 routes.rb에 줄을 추가하는 것이 효율적이라고 생각하지 않습니다. 그럼 내 질문은 모델의 정확한 정보를 얻기 위해 매개 변수의 첫 번째 부분 (이 경우 wizards
및 dragons
)을 처리하는 방법입니다.
여기 내 아이디어 중 하나입니다 - (어떻게 든) 분할 다시 슬러그 (의 첫 번째 부분, wizards
및 dragons
및 관련 컨텐츠를 가져 오기 위해 모델에), (예를 들어 /wizardfest2012/dates
를 슬러그의 나머지 부분을 통과
constraints :camp => /wizards|dragons/ do
match ':camp/home' => "pages#home"
match ':camp/blog/:title' => "pages#blog"
# ...and all the routes with known components
match ':camp/*other' => "pages#other"
end
당신은을 만들 수 있습니다 :
이 작업을 수행하는 가장 효율적인 방법에 대한 어떤 생각
다른 페이지에 대해 서로 다른 모델을 가진 CMS는 어떤 종류입니까? 그것은 모두 같은 모델입니다. 어쩌면 당신이하려고하는 것에 대해 덜 고안된 예를 게시한다면 어떨까요? – meagar
페이지 컨트롤러, 페이지 모델. 다른 모델이 어디서 왔는지는 확실하지 않습니다. – userrrrr
드래곤/마법사를 "모델"에서 분리하는 것에 대한 자신의 말로 말입니다. – meagar