UTF-8 выпуск в Ruby on Rails - PullRequest
0 голосов
/ 03 июня 2011

Я пытаюсь отобразить фрагменты текста на нескольких языках. Поскольку это все европейские языки, я выбрал кодировку UTF-8 для базы данных и источников данных. База данных - MySQL и настроена с кодировкой UTF-8.

При просмотре конфигурации моего проекта RoR я могу найти различные настройки, которые говорят ему делать все в кодировке UTF-8. Данные, которые я храню в базе данных, поступают из файла XML с атрибутом кодировки UTF-8, который создается с помощью notepad ++ и сохраняется с кодировкой UTF-8.

Однако, когда я получаю данные из базы данных, выводится текст с несколькими сущностями в нем. Я не знаю, как решить эту проблему .... Ниже приведены настройки моей среды:

$ gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 1.5.2
  - RUBY VERSION: 1.8.7 (2011-02-18 patchlevel 334) [i386-mingw32]
  - INSTALLATION DIRECTORY: c:/Ruby/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: c:/Ruby/bin/ruby.exe
  - EXECUTABLE DIRECTORY: c:/Ruby/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-mingw32
  - GEM PATHS:
     - c:/Ruby/lib/ruby/gems/1.8
     - c:/Users/arne.de.herdt.TENFORCE2/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

Если вам нужна информация, пожалуйста, спросите, и я обновлю эту тему. Я просто пытаюсь заставить данные отображаться правильно.

ПРИМЕР: Prüfer f r die Zerst rungsfreie Werkstoffpr fung (m / w) Arbeitsort: Дюссельдорф

EDIT: Добавление выходного файла database.yml

# MySQL.  Versions 4.1 and 5.0 are recommended.
#
# Install the MySQL driver:
#   gem install mysql2
#
# And be sure to use new-style password hashing:
#   http://dev.mysql.com/doc/refman/5.0/en/old-client.html
development:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: ESCO_development
  pool: 5
  username: hidden_username
  password: hidden_password
  host: localhost

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: ESCO_test
  pool: 5
  username: hidden_username
  password: hidden
  host: localhost

production:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: ESCO_production
  pool: 5
  username: hidden_username
  password: hidden
  host: localhost

1 Ответ

1 голос
/ 03 июня 2011

Вся конфигурация вашей базы данных выглядит нормально, вы проверили, не использует ли ваш браузер кодировку кодировки?Попробуйте изменить кодировку вручную в браузере.

Кроме того, проверьте html-файлы, чтобы найти любую другую кодировку кодировки, отличную от utf8

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...