복붙노트

[RUBY-ON-RAILS] URL에 표시 3 UTF-8 쿼리 문자열은 레일?

RUBY-ON-RAILS

URL에 표시 3 UTF-8 쿼리 문자열은 레일?

내 홈 페이지에 검색 쿼리 양식을 가지고 (/)

<% form_tag(search_path, :method => :get) do %>
  <%= text_field_tag 'query' %>
  <%= submit_tag "Search", :name => nil%>

<% end %>

나는이 검색 양식을 제출하면, 나는 (/? 쿼리 = foo는 검색)에서 끝내고 싶다. 그러나 지금 내가 검색 / 얻을? UTF8 = % E2 % 9C % 93 & 쿼리 = foo는. 이 일을 매개 변수가 UTF8은 무엇입니까? 어떻게 제거 할 수 있습니까?

감사.

해결법

  1. ==============================

    1.(이전 눈사람라고도 함) UTF8 파라미터는 인터넷 익스플로러 버그 레일 3 대안이다.

    (이전 눈사람라고도 함) UTF8 파라미터는 인터넷 익스플로러 버그 레일 3 대안이다.

    짧은 대답은 적어도 하나 개의 UTF8의 문자가 POST 데이터에 포함되지 않는 Internet Explorer가 POST 데이터 UTF8 인코딩을 무시한다는 것입니다. 따라서, 레일 UTF8 부호화로 처리를 모든 IE를 강제 형태의 UTF8 문자를 분사.

  2. ==============================

    2.이 매개 변수는 레일 3의 새로운 기능입니다.

    이 매개 변수는 레일 3의 새로운 기능입니다.

    그것은 이전에 눈사람이었다.

    그것은 IE 정말 UTF-8을 사용하는 데 도움이됩니다.

    때 form_tag를 사용하지 마십시오 그것은 작동 :

    <form action="<%= search_path %>" method="get" >
      <%= text_field_tag 'query' %>
      <%= submit_tag "Search", :name => nil%>
    </form> 
    
  3. ==============================

    3.레일에 때 form_tag 4.2 (아마도 이전)을 가지고 enforce_utf8 옵션을;

    레일에 때 form_tag 4.2 (아마도 이전)을 가지고 enforce_utf8 옵션을;

  4. ==============================

    4.나는 모두가 존재하는 이유를 설명하는 훌륭한 일을했다고 생각하지만, 나는이었다 질문은 대답하지 않은 느낌 :

    나는 모두가 존재하는 이유를 설명하는 훌륭한 일을했다고 생각하지만, 나는이었다 질문은 대답하지 않은 느낌 :

    모든 것이 정확 말했다 그래서, 당신은 "IE"하지만 당신은 "POST"대조적으로 "GET"을하고 있기 때문에 그것은 당신의 주소 표시 줄에 표시되는 이유와 도움말을 제공 필요성을한다. 이 게시물 확인하고는 사라,하지만 당신은 또한 규칙을 다음되지 않습니다.

    이들 중 어느 것이 당신에게 가장 허용 내려 온다.

  5. from https://stackoverflow.com/questions/4104474/rails-3-utf-8-query-string-showing-up-in-url by cc-by-sa and MIT license