act_as_ferret与德国变音符号

时间:2011-01-25 16:38:47

标签: ruby-on-rails diacritics ferret acts-as-ferret

我设法使用基于acts_as_ferret的搜索来设置我的应用。总的来说它工作正常。但我找不到变音符号的结果(例如“Getränke”)。

我将此添加到我的environment.rb并从头开始重建索引,但没有更好的结果。

Ferret.locale = "de_DE.UTF-8"

我仔细检查了我的数据库表,但我认为这应该是完美的:

DEFAULT CHARSET=utf8 COLLATE=utf8_bin

BTW:数据在数据库表中正常显示(使用Sequel Pro查看)。

然后我用Textmate打开索引文件,用“Getränke”搜索条目,我发现,TextMate用Mac Roman编码打开它,然后像这样显示Umlaut

  

GETR‰NKE

我用UTF-8编码重新打开了索引文件,但是奇怪的字符串显示为带问号的矩形。

如何通过使用德语变音符号搜索单词来查找结果?

1 个答案:

答案 0 :(得分:0)

这就是诀窍

的environment.rb

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

的database.yml

development:
  encoding: utf8