рубин to_yaml двоеточие в ключах - PullRequest
0 голосов
/ 01 ноября 2018

Я конвертирую хеш в yaml в ruby, но он добавляет: к ключам: Например:

:name: "Name"
:value: "Value"

Если есть способ избежать и просто вывести:

name: "Name"
value: "Value"

Я могу сделать это легко с gsub, Но просто любопытно

1 Ответ

0 голосов
/ 01 ноября 2018

Если вы используете строковые ключи, вы не получите эти префиксы. Вот что происходит, когда вы что-то сериализуете с помощью символьных клавиш.

В Rails или с помощью ActiveSupport вы можете вызвать deep_stringify_keys, чтобы преобразовать их все до YAML.dump.

В противном случае YAML просто пытается сериализовать и десериализовать как можно точнее. Восстановленный файл с :name: x имеет { :name => 'x' } в качестве результирующих данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...