2013-04-05 4 views
1

"new_911"이라는 get 작업을 만드는 앱이 있습니다. 애플리케이션 레이아웃에 new_911_call_path를 넣을 때 "new_911 컨트롤러와 일치하는 라우트가 없습니다 : 호출"이라는 오류가 발생합니다. 그러나 호출 컨트롤러에는 new_911이라는 작업이 있습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?레일에서 컨트롤러와 일치하는 경로가 없습니다

통화 컨트롤러 :

def new_911 
    @call = Call.new :call_status => "open" 
    respond_with @call 
end 

application.html.erb

<li><%= link_to 'New 911 Call', new_911_call_path %></li> 

routes.rb

resources :calls do 
    member do 
     post 'close' 
     post 'cancel' 
     post 'note' 
     get 'new_return' 
     get 'duplicate_call' 
     get 'edit_times' 
     put 'update_billing' 
     get 'new_911' 
    end 

레이크 경로 (ID/new_911 : /전화/GET new_911_call . : 형식) # new_911

답변

1

매개 변수를 경로에 추가해야합니다. 회원 경로를 사용 중이므로 id 매개 변수를 추가해야합니다 (this). 해당 경로를 변경해야 할 수도 있습니다.

0

알아 냈어. 나는 컬렉션 대신 멤버를 사용하고있었습니다. 또한 new_911을 사용하면 일정 오류가 발생하여 컨트롤러 스키마의 EmergencyCalls로 변경하고 일반적인 "새"작업을 활용했습니다. 추가 된 리소스 : emergency_calls을 내 루트 파일에 적용하면 효과가있었습니다.

미안하다.