Мне нужно преобразовать хеш, как показано ниже, в читаемый YAML. Похоже, я могу кормить YAML::load строку, но я думаю, что мне нужно сначала преобразовать ее в нечто вроде этого:
hostname1.test.com:
public: 51
private: 10
{"hostname1.test.com"=>
{"public"=>"51", "private"=>"10"},
"hostname2.test.com"=>
{"public"=>"192", "private"=>"12"}
}
Я не уверен точно, как сделать это преобразование в эту строку эффективно.
Я просмотрел документацию HASH и ничего не нашел для to_yaml. Я нашел его, выполнив поиск to_yaml, который станет доступен, когда вы require yaml. Я также попытался использовать метод Enumerable collect, но запутался, когда мне нужно было перебрать значение (другой хеш).
Я пытаюсь использовать "Преобразование хэша в строку в Ruby" в качестве ссылки. Моя мысль заключалась в том, чтобы передать это в YAML::load, и это создало бы YAML, который я хотел.