복붙노트

[RUBY-ON-RAILS] 레일 3, 호환되지 않는 문자 인코딩에 루비 : UTF-8 및 국제화와 ASCII-8BIT

RUBY-ON-RAILS

레일 3, 호환되지 않는 문자 인코딩에 루비 : UTF-8 및 국제화와 ASCII-8BIT

부부가 3.0.1, 루비 1.9.2 내 웹 사이트 현지화 레일에 좀 문제가 있어요.

문제는, 내가보기에 그런 일을 매우 간단 가지고있다 :

f.input :zip_code, :label => I18n.t('labels.zip_code')

그리고 es.yml 파일 :

es:
  labels:
    zip_code: "Este código postal no es valido."

거기 en.yml 파일을 아무 문제 (이것은 순수한 ASCII입니다) 없다 그러나 웹 사이트가 설정 될 때 i18n.locale == 'ES'나는이 오류가 발생합니다 :

incompatible character encodings: UTF-8 and ASCII-8BIT

나는 아주 잠시 동안 주위를 찾고있다하지만 내 UTF-8 변환 파일을 사용하는 방법을 발견하지 않았다.

일부가 작동하는 방법을 알고 계십니까?

당신의 도움을 주셔서 감사합니다.

해결법

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

    1.좋아, 그래서 문제는 인터넷 검색을 몇 시간 후 해결 ...

    좋아, 그래서 문제는 인터넷 검색을 몇 시간 후 해결 ...

    내 코드에서이 버그가 실제로이 있었다. 첫번째는 파일 인코딩 에러이고 둘째는 MySQL의 데이타베이스 구성에 문제가 있었다.

    첫째, MySQL의 난이 두 기사를 사용으로 인한 오류를 해결하기 위해 :

    http://www.dotkam.com/2008/09/14/configure-rails-and-mysql-to-support-utf-8/

    http://www.rorra.com.ar/2010/07/30/rails-3-mysql-and-utf-8/

    둘째, 파일 인코딩 문제를 해결하기 위해 내 설정 / environment.rb에 이러한 2 개 라인 추가

    Encoding.default_external = Encoding::UTF_8
    Encoding.default_internal = Encoding::UTF_8
    

    희망이 사람을 도움이 될 것입니다 :)

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

    2.나는 많은 솔루션을 결합하여 대부분의 문제를 해결 :

    나는 많은 솔루션을 결합하여 대부분의 문제를 해결 :

    http://rorguide.blogspot.com/2011/06/incompatible-character-encodings-ascii.html

  3. ==============================

    3.UTF-8로 저장 한 당신은 당신의 es.yml 파일을 하시겠습니까?

    UTF-8로 저장 한 당신은 당신의 es.yml 파일을 하시겠습니까?

    Windows에서 경우, 확인 http://notepad-plus-plus.org/를 사용합니다.

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

    4.당신이 오류 메시지를 변환 할 수 없습니다를 얻는 경우에 저를 마지막으로 정렬이이 압축 풀기 기능을 도와 사용이 시도 :

    당신이 오류 메시지를 변환 할 수 없습니다를 얻는 경우에 저를 마지막으로 정렬이이 압축 풀기 기능을 도와 사용이 시도 :

    myString.unpack('U*').pack('U*')
    
  5. ==============================

    5.확인 당신은 당신의 설정 / application.rb에서 "UTF-8"config.encoding =습니다. 또한, 귀하의 예를 변환 파일은 (com_name 및 FIRST_NAME) 검색하는 키와 일치하지 않는하지만 그건 그냥 오타가 될 수도있을 것 같군요.

    확인 당신은 당신의 설정 / application.rb에서 "UTF-8"config.encoding =습니다. 또한, 귀하의 예를 변환 파일은 (com_name 및 FIRST_NAME) 검색하는 키와 일치하지 않는하지만 그건 그냥 오타가 될 수도있을 것 같군요.

  6. from https://stackoverflow.com/questions/4188677/ruby-on-rails-3-incompatible-character-encodings-utf-8-and-ascii-8bit-with-i18 by cc-by-sa and MIT license