문제

내가 제안하는 행동 :

사용자는 내 "검색"페이지 www.site.com/search를로드하고 쿼리를 양식에 입력하고 클릭 한 다음 www.site.com/search/the+ Query에서 www.site 대신에 끝납니다. com/search? q =+쿼리. 나는 이미 많은 Pylons 문서를 겪었고 방금 경로 문서를 읽었으며 이것이 경로 계층에서 일어날 수 있는지 궁금합니다. www.site.com/search/the+Query가 주어지면 검색을 수행하기 위해 응용 프로그램을 이미 설정했지만이 목적지로 양식을 보내는 방법을 알 수는 없습니다.

아니면 redirect_to ()가있는 컨트롤러 내부에서 일어나야 할 일입니까?

아니면 다른 곳?

후속 조치 :

이것은 현재 실제 "돌로 설정된"욕구가 적고 미래의 기능을 브레인 스토밍하기위한 호기심입니다. Wikipedia 덤프를 사용하는 응용 프로그램을 디자인하고 있으며 사용자가 Wikipedia에서 검색을 수행하고 검색이 너무 모호하지 않은 경우 기사 링크 (en.wikipedia.org/wiki/apple)로 직접 리디렉션하는 것을 관찰했습니다. 그것은 실제로 HTTP 302 리디렉션 단계 사이의 실적을 수행하고 있으며, 필론에서 더 우아하고 귀여운 방법이 있는지 궁금합니다.

도움이 되었습니까?

해결책

URL에 원하는 컨텐츠를 보낼 수 있지만 브라우저 주소 표시 줄에 특정 URL이 나타나려면 리디렉션을 사용해야합니다. 이것은 서버 측에서 Pylons, Django 또는 Rails를 사용하는지 여부와 무관합니다.

취급에서 /search (이든 POST 또는 GET), 하나는 일반적으로 백엔드에서 쿼리를 실행하고, 검색 결과가 하나만 있으면 (또는 압도적으로 관련된 결과가 하나만 있으면) 해당 결과로 리디렉션되며, 그렇지 않으면 상단 N 결과에 대한 링크를 표시하는 페이지로 리디렉션됩니다. 그것은 단지 정상적인 연습입니다, Afaik.

다른 팁

HTML 양식은 쿼리 문자열이있는 특정 URL로 이동하도록 설계되었습니다.?q=) 또는 a POST - 영리하고 미묘한 JavaScript를 작성하여 양식 제출을 가로 채서 선호하는 이상한 방식으로 다시 작성하거나 사용합니다. redirect_to (그리고 후자는 약간의 일을 할 것입니다).

그러나 왜 표준을 따르는 대신 그렇게 이상한 행동이 필요합니까?! 애플리케이션 수준의 요구 사항으로 사용 사례를 설명하십시오 ...!

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top