요청을 처리하는 프로세스를 이해하기 위해 레일즈 3 아키텍처를 살펴 보았습니다. 전체 과정은 아주 간단합니다. 응용 프로그램은 최종적으로 호출 메시지를 필요한 컨트롤러의 적절한 조치를 전달하는 ActionDispatch :: Routing :: RouteSet의 호출 메소드에 위임하는 랙 응용 프로그램입니다. "action_dispatch.request.path_parameters"키로 랙 env에 저장된 해시에서 컨트롤러 및 액션 이름을 가져옵니다.레일 3 요청 파견주기
그래서 질문입니다. 누가이 해시를 설정합니까? 누가 uri를 파싱하고 액션과 컨트롤러 이름을 결정합니까?
이 코드를 찾을 수 없습니다. Route Configuration 과정에서 ActionDispatch :: Routing :: Mapper 객체가 정의 된 경로에 대한 정보를 생성하고 ActionDispatch :: Routing :: RouteSet에 저장하는 데 사용됩니다. 그러나이 정보가 적절한 조치와 컨트롤러를 찾는 요청 중에 어떻게 사용되는지. 랙도 여기 어떻게 든 관련되어 있습니까?