중첩 된 자원의 새로운 작업에 대한 POST 요청을 생성합니다, 지금레일 노선이 나는 다음과 같은 중첩 된 자원 한
= button_to "Make Offer", new_listing_offer_path(@listing)
을 내 명부/show.html.haml에서
resources :listings do
resources :offers do
member do
put "accept"
put "reject"
end
end
end
이를 때
Started POST "/listings/2/offers/new" for 127.0.0.1
ActionController::RoutingError (No route matches "/listings/2/offers/new"):
내가 새로 고치면 (GET 요청), 다음 페이지의 표시 : 나는 레일 POST 요청을 생성하고, 따라서 오류, 버튼을 클릭합니다 ys 올바르게.
이 잘못된 라우팅은 수락 및 거부 (POST 동작 일 수밖에없는 추가 작업)를 추가 할 때만 발생한다고 생각합니다.
레일스에 버그가 있습니까? 아니면 내 잘못입니까? 이 오류를 어떻게 방지해야합니까?
감사합니다.
감사합니다. Mike. 힌트에서, 나는 add : method => : button_to를 얻을 수 있다는 것을 깨달았다. 그것은 작동합니다. – AdamNYC
문제 없습니다. 그래, 그것도 작동하지만 검색 폼이나 뭔가가 아니라면 GET을 수행하기 위해 양식 제출을 사용하면 나에게 어색한 느낌이 들기 때문에 의도적으로 그 솔루션을 빠져 나왔다.하지만 확실히 작동한다! – miked