문제

내 경로 파일에 올바른 경로를 설정하는 데 문제가 있습니다. 이벤트 컨트롤러가 있습니다. 이벤트 컨트롤러 내에는 "사람"이라는 조치가 있습니다.

def people
    @people = Event.find_by_sql(["sql that joins three tables to get the data I need;", params[:id]])
end

내 경로에서 나는 다음과 같습니다.

resources :events do
    collection do
      get :somethingelse
      get :people
    end
end

"find_by_sql"전에 내 매개 변수 [: id]를 하드 코딩하면 ".../events/people"을 방문 할 때 잘 작동하지만 ".../events/5/people"과 같은 일을하려고한다면 "No Route Matches [get]/events/5/people "오류가 발생합니다.

내 경로 파일에서 간단한 것을 놓치고 있다고 확신합니다. 누구든지 내가 놓친 부분을 제공 할 수 있습니까?

도움이 되었습니까?

해결책

예, 수집 중이 아닙니다. 회원에 있습니다.

collection do
  get :somethingelse
end
member do
  get :people
end

다른 팁

이 접근법을 시도 할 수 있습니다.

id = 1
User.find_by_sql(['select * from users where id = ?', id])`
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top