게시 및 댓글 모델이 있습니다. 코멘트는 포스트에 속하며 루트의 포스트 아래에 중첩됩니다. 의견은 게시물 # show에서 게시됩니다. 내 경로는 다음과 같다 : 사용자가 검증에 실패 의견을 제출중첩 된 리소스를 사용할 때의 라우팅 오류
resources :posts do
resources :comments, only: [:create, :edit, :update, :destroy]
end
경우, URL은 다음과 같이 표시됩니다
app.com/posts/:id/comments
을 어떤 이유로, 사용자의 입력 공격하기로 결정하는 경우 주소 표시 줄에 라우팅 오류가 있습니다.
Routing Error
No route matches [GET] "/posts/21/comments"
Try running rake routes for more information on available routes.
이것은 어떤 이상한 것입니다. 왜 오류가 발생하는지 이해하지만 사용성 측면에서는 좋지 않은 것처럼 보입니다. 이런 일이 발생하지 않도록하는 방법이 있습니까?
친숙한 리디렉션을 수행 할 때 이것은 더 큰 문제가됩니다. 친숙한 리디렉션이 발생하면 Rails는 GET 요청을 사용하여 동일한 URL로 리디렉션하여 다시 라우팅 오류를 발생시킵니다.
흥미는 PARAMS을 보존 할 수있는 방법은 POST 요청의 경우, 또는 사용자의 제출에 대한 어떤이 게시물 제출을 계속 하시겠습니까? – Mohamad
매개 변수를 쿠키에 저장할 수 있습니다. 또한 저장된 데이터를 검색해야하는지 또는 제출을 다시 시도할지 여부를 제어해야합니다. –