2012-01-26 3 views
2

나는 컨트롤러 my_controller을 가지고 있으며 그 안에는 my_action 액션이있다. my_action보기에서 양식을 만들고 수동으로 이것을 설정합니다 : <%=form_tag('/photos/create') do%>. 나는 photos 컨트롤러에서이 작업에이 양식을 보낼 때, 나는 왜, 때이 오류가 발생하고 오류양식에 올바른 주소를 설정하는 방법은 무엇입니까?

No route matches [POST] "/photos/create" 

(물론 작업 createphotos 컨트롤러에 존재) 내 질문은이다를 얻을 수 있습니다 이 조치가 존재하며 수동으로 주소를 설정하는 올바른 방법은 무엇입니까?

답변

2

경로가 잘못 되었기 때문입니다. 사진의 경우 create 조치는 POST 대신 /photos 경로에 있어야합니다. 명령 줄에서 rake routes을 실행하면 모든 경로의 목록과 해당 경로가 컨트롤러 동작에 매핑되는 방식을 확인할 수 있습니다.

대신을 시도해보십시오

<%=form_tag(photos_path, :method => :post) do%> 

자세한 내용은 다음을 http://guides.rubyonrails.org/routing.html

+0

: 방법 => 형태의 @alony가 합의 – alony

+0

기본적으로 사용으로 실제로 건너 뛸 수 있습니다 게시,하지만 생각이 유용 할 것이다 디폴트로 혼란 스러울 수있는 새로운 Rails 사용자에게 – iwasrobbed

관련 문제