acts_as_ferret с немецкими умлаутами

Мне удалось настроить мое приложение с помощью поиска, основанного на acts_as_ferret. В целом все работает отлично. Но я не могу найти результаты для слов с умлаутами (например, "Getränke").

Я добавил это к своему environment.rb и перестроил индекс с нуля, но без лучших результатов.

Ferret.locale = "de_DE.UTF-8"

Я дважды проверил свою таблицу базы данных, но я думаю, что это должно быть идеально:

DEFAULT CHARSET=utf8 COLLATE=utf8_bin

Кстати: данные хорошо отображаются в таблице базы данных (просмотр с Sequel Pro).

Затем я открыл индексный файл с помощью Textmate, чтобы найти запись с помощью "Getränke", и, как мне показалось, TextMate открыл его с кодировкой Mac Roman и отобразил Umlaut следующим образом.

GetR ‰ NKE

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

Как я могу найти результаты поиска слов с немецкими умляутами?

1 ответ

Решение

Это сделал трюк

environment.rb

$KCODE = 'u'
ENV['LANG'] = 'de_DE.UTF-8'
Ferret.locale = "de_DE.UTF-8"

database.yml

development:
  encoding: utf8
Другие вопросы по тегам