Pregunta

Cuando serializar un hash que contiene cadenas UTF8, como esto:

  poll.variants = {0 => 'тест',1 => '-тест-',2 => 'test # test "тест'}

a un campo ActiveRecord, el campo resultante contiene:

--- 
0: !binary |
  0YLQtdGB0YI=

1: !binary |
  LdGC0LXRgdGCLQ==

2: !binary |
  dGVzdCAjIHRlc3QgItGC0LXRgdGC

Las cadenas UTF8 son tratados como binario y base64 por alguna razón. La colación en el campo es utf8_general_ci, y yo soy un poco decepcionado.

¿Hay alguna manera de hacer ActiveRecord: serializar yaml legible para el campo

?
¿Fue útil?

Solución

  

¿Hay alguna manera de hacer ActiveRecord   : Serializar yaml legible por humanos a la   campo?

No. Su Base64 codificado a fin de codificar texto arbitrario (en cualquier codificación) hasta el denonimator común más bajo, que luego es seguro enviar a través del alambre y / o almacenar en almacenes de datos que no aceptan datos UTF-8.

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