Pregunta

Logré configurar mi aplicación con una búsqueda basada en ACTS_AS_FERRET. En general funciona bien. Pero no puedo encontrar resultados para palabras con umlauts (por ejemplo, "getränke").

Agregué esto a mi entorno. RB y reconstruí el índice desde cero, pero no hay mejores resultados.

Ferret.locale = "de_DE.UTF-8"

Revisé dos veces la tabla de mi base de datos, pero creo que esto debería ser perfecto:

DEFAULT CHARSET=utf8 COLLATE=utf8_bin

Por cierto: los datos se muestran bien en la tabla de la base de datos (vista con Sequel Pro).

Luego abrí el archivo de índice con TextMate para buscar la entrada con "getränke" y me fugise, el compañero de texto lo abrió con la codificación romana de Mac y muestra el umlaut así

Getr ‰ nke

Reabrí el archivo de índice con la codificación UTF-8, pero luego los extraños Charackters se muestran como rectángulos con marcos de preguntas.

¿Cómo puedo encontrar resultados buscando palabras con umlauts alemanes?

¿Fue útil?

Solución

Esto hizo el truco

ambiente.rb

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

database.yml

development:
  encoding: utf8
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top