Google 웹 사이트의 제품 이름을 '팔찌'에서 '손목 밴드'로 변경했으며 기존 경로를 유지해야합니다. 기본적으로Ruby on Rails 경로 파일에서 매개 변수를 전달하는 방법을 리디렉션합니다.
,이 노선
www.hostname.com/products/bracelets/series-1/
www.hostname.com/products/bracelets/series-1/small-purple
해야 나는을 읽고있다
www.hostname.com/products/wristbands/series-1/small-purple
www.hostname.com/products/wristbands/series-1/ 노선 튜토리얼은 http://guides.rubyonrails.org/routing.html#redirection이고 블록 구문을 사용하는 것처럼 보이지만 경로를 올바르게 수행하는 방법을 아직 모릅니다. 라우트 파일에 대해서도 더 배우고 싶습니다. 그래서 어떤 정보도 훌륭합니다. 미리 감사드립니다
match "/bracelets/:name" => redirect {|params| "/wristbands/#{params[:name]}" }
편집 :
내가 조금 그것으로 놀고 있었고, 여기가 내가
match "/products/bracelets/:name/:name2" => redirect {|params| "/products/wristbands/#{params[:name].pluralize}/#{params[:name2].pluralize}" }
입력 URL 시도 무엇과 협력하는 방법을 확인 : 로컬 호스트 : 3000/제품/팔찌/시리즈-1/- 작은 보라색
출력 URL : 리터 ocalhost : 3000/제품/팔찌
오류 메시지 : 잘못된 제품 : 시리즈-1
(그래서 경기가 작동하지만, 리디렉션하지 않았다)
이 같은 PARAMS을 검사 할 경기를 변경하는 경우 :
match "/products/balance-bracelets/:name/:name2" => redirect {|params| "/products/wristbands/#{params.inspect}" }
나는 다음과 같은 얻을 :
/products/wristbands/{:name=>"series-1", :name2=>"small-purple"}
그래서 두 번째 슬래시 '/'또는 무언가를 인식하지 못합니다 나타납니다. 어떤 아이디어? 난
당신이 설명 할 수 레일에서이 작업을 수행 할 수 있습니다? – oldergod
감사합니다. 어떤 아이디어라도 추가 했습니까? – ruevaughn