当我序列的散列包含UTF8字符串,是这样的:

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

到一个ActiveRecord字段,所得到的字段包含:

--- 
0: !binary |
  0YLQtdGB0YI=

1: !binary |
  LdGC0LXRgdGCLQ==

2: !binary |
  dGVzdCAjIHRlc3QgItGC0LXRgdGC

在UTF8串得到视为二进制和base64编码出于某种原因。在球场上的排序规则是utf8_general_ci,我有点失望。

是否有任何方法,使ActiveRecord的:序列化人类可读YAML到字段

有帮助吗?

解决方案

  

有没有什么办法,使ActiveRecord的   :序列化人类可读YAML到   场?

没有。其Base64编码,以便编码的任意文本(在任何编码)下降到最低共同denonimator,然后将其安全地通过线路和/或存储在不接受UTF-8的数据的数据存储发送。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top