MySQL cambia UTF-8 a ASCII-8BIT
Tengo este escenario.
Un título de película:
$ title = "La leyenda de Osaín"
Con esta codificación:
$ title.encoding.name
>> UTF-8
Luego lo guarda en la base de datos.
$ movie = Movie.create!(:title => title)
Luego intento obtener la película.
$ Movie.find(movie.id).title.encoding.name
>> "ASCII-8BIT"
$ Movie.find(movie.id).title
>> "La leyenda de Osa\xC3\xADn"
Todas las otras películas funcionan que no contienen caracteres especiales comoí
yû
.
Este es mi archivo database.yaml:
development:
adapter: mysql
database: development
username: linus
password: my_password
socket: /tmp/mysql.sock
encoding: UTF8
Estoy obteniendo el tipo correcto de datos cuando usoforced_encoding
.
$ Movie.find(movie.id).title.force_encoding("UTF-8")
>> "La leyenda de Osaín"
Estoy usando Rails 3.0.5.rc1 con MySQL 14.14.
¿Alguien sabe cuál puede ser el problema?