Rails对' puts'使用不同的编码。 vs' return'

时间:2018-04-24 01:30:59

标签: ruby-on-rails ruby-on-rails-4 encoding

我有一个Rails方法,结尾如下:

puts encrypted
return encrypted

控制台输出:

#?$???z???e7Bw?1I?F???????s?w
=> "#\x9A$\xB1\xBA\xF4z\x8F\x97\xECe\a7Bw\xE01I\xEDF\xA6\xBE\xEA\xE0\xFC\xF6\xB9\x1Cs\x00\xC0w\x14"
  1. 为什么在同一位置输出并且没有任何编码/解码指令时,这些结果会有所不同?
  2. 当我致电puts encrypted时,如何让Rails输出更长的版本?

1 个答案:

答案 0 :(得分:2)

IRB在转储它们之前调用inspect的值,以便在这种情况下公开可能仅仅?或更糟的输出的代码。

尝试p encrypted,然后尝试puts encrypted.inspect