나는 이것이 쉬울 것이라고 생각하지만 내 인생에서 그것을 작동시킬 수 없으며 웹에서 그것을 설명하는 것을 찾을 수 없습니다. 양식 제출 후 리퍼러 / 리퍼러로 다시 리디렉션하고 하나 이상의 쿼리 매개 변수를 변경하거나 삭제하려고합니다.
예를 들어, 양식은
/tasks/6?foo=1&bar=1
그리고 나는 나중에 가고 싶다.
/tasks/6?foo=0&bar=1
나는 모든 종류의 조합을 시도했습니다.
redirect_to :back, foo: 0
또는
redirect_to :back, params: {foo: 0, bar: 1}
등등, 그러나 전혀 나를 원래 페이지 이외의 다른 것으로 리디렉션하지 않습니다. 나는 현을 직접 엉망으로 만드는 것을 피하고 싶었지만, 그렇게 될 수도있다.
매개 변수를 완전히 제거하는 방법도 있다면 멋질 것입니다.
/tasks/6?bar=1
감사!
:back
다른 인수를 허용하지 않습니다. 하고 싶은 일을 달성하기 위해서는 다음을 사용하여 리퍼러의 가치를 얻어야합니다.
request.referer
또는
request.env['HTTP_REFERER']
URI
라이브러리로 구문 분석 하고 쿼리를 추출한 다음 Rack::Utils.parse_query
. 이 시점에서 매개 변수의 해시가 있습니다.
해시를 업데이트하고 리디렉션을위한 URL을 구성 할 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다