'Passing Multiple Parameters in a form_tag'의 질문은 form_tag 내에 매개 변수를 전달하는 방법에 대한 정보를 제공하지만 포스터는 궁극적으로 말단을 달성하는 다른 방법 (특히 숨겨진 양식 필드 사용)을 추구하기로 결정했습니다.rails form_tag _path parameters
같은 관점에서 코드의 라인을 사용하려고 할 때 : RoR에 컨트롤러가 사용할 'foo는'의 값을하지 않습니다 것처럼
form_tag(movies_path({:foo = "bar"}), {:id => "ratings_form", :method => :get}) do
보인다; 그러한 시나리오에서 경로의 일부로 매개 변수를 전달하는 데 사용해야하는 또 다른 구문이 있습니까?
매개 변수를 URL의 일부로 전달하려면 이러한 접근 방식이 정확할 것이라고 생각하면됩니다 (사실 <form>
태그에 action="/movies?foo=bar"
문이 포함되어 있기 때문에 생성 된 HTML은 많은 것을 나타냅니다). 컨트롤러가 params[:foo]
을 으로 평가하고 bar
이 아닌 경우?
야, 많이 감사! 우리 학급에 주어진 정보 ([email protected])를 토대로 나는 (이 문제와 관련된 숙제의 첫 부분에서) 매개 변수를 통해 매개 변수를 전달하는 방법을 설정하면서 문제가 무엇인지 말할 수 없었습니다. 'movies_path (: sort_by => "title")'...와 같은 호출이지만 'form_tag'HAML 요소의 범위에 포함되지 않았습니다. 이 경우 연결 가능 상태가 의도되었으므로 시도한 메서드가 충분할 것이라고 가정했기 때문에 (우리는 할당의 다음 부분에서 '세션'을 통해 매개 변수를 전달하기 만합니다.) –
BTW, 당신이 언급 한'routes.rb' 라인을 추가하는 것은 라우트를 추가한다는 것을 알았지 만, CRUD 액션의 표준 세트를 생성하는'resources : movies' 라인의 출력은 첫 번째 컬럼으로 영향을받습니다 출력의 "영화"가 새 색인 작업과 관련되어 있음을 나타냅니다. 그러나 테스트는 인덱스 경로가 여전히 작동 함을 나타냅니다. 추신 : 게시물 끝에 "맞춤법 오류"가 표시되지만 수정을 시도 할 때 수정할 수 없습니다. 시도 할 때 여섯 가지 변경 사항이 필요합니다 ... –
예, 경로가 순서대로 처리됩니다. 그것들은 (위에서 아래로) 정의되고, 그것이 나오는 첫 번째 일치를 치게 될 것입니다. "중첩"경로를 가질 수 있지만 첫 번째 경로 만 실제로 경로를 지정합니다. –