동일한 컨트롤러 작업으로 HTML에 대한 모든 요청을 처리하려는 앱을 작성하고 있습니다. JSON에 특정한 다른 경로가 있습니다. 여기 내 경로가 어떻게 생겼는지입니다 :Rails : 요청 형식에 따라 다른 컨트롤러로 라우팅
Blog::Application.routes.draw do
constraints format: :json do
resources :posts
end
match "(*path)" => "web#index"
end
문제는 constraints
는 "이 경로를 건너 뛰고 요청에없는 경우 다음을 시도하기보다는"이 경로는 지정된 형식 작동 "으로 해석되고있는 것입니다 지정된 형식. " URL이 JSON 형식으로 제한되어 있기 때문에 브라우저에서 /게시물로 이동 즉
모든
하지를 정말로 .. 단일 페이지 응용 프로그램의 경우 이것은 정확히 원하는 것일 수 있습니다. Html 요청은 클라이언트 측에서 채워진 단순한 레이아웃을 생성합니다. Json 요청은 경로 별 json 출력을 생성합니다. – fifigyuri
Google의 최고 Rails 사용자 중 일부가 이러한 종류의 컨트롤러 분리를 수행했으며 단일 페이지 앱에서 사용하기에 적합하다고 들었습니다. 얇은 컨트롤러를 사용하는 것이 가장 확실한 방법입니다. 각 컨트롤러 메소드에서 동작을 구성하는 대신 config/routes.rb에서 동일한 URL로 여러 URL을 라우팅하는 DRYness 및 단순성도 있습니다. 일반적으로 뚜렷한 관심사에 대해 컨트롤러 하나를 추가하는 것은 모든 컨트롤러를 그 관심사에 연결하는 것보다 낫습니다. 불타는 것에 대해 유감스럽게 생각하고 나는 더 나은 대답을 생각하려고 노력할 것입니다. – user1158559