Как обозначить пустой словарь в YAML? Т.е. он должен быть семантически эквивалентен пустому json-объекту {}
.
91
Краткий ответ: используйте {}
В yaml есть два способа обозначать отображения (словари); отображения расхода и блок отображения :
block_mapping:
name: foo
id: bar
flow_mapping: { name: foo, id: bar }
empty_flow_mapping: {}
Таким образом, стиль отображения потока подходит для представления пустых отображений.
empty_block_mapping:
пробела, эквивалентноempty_block_mapping: null
, notempty_block_mapping: {}
.Общая методика ответа на этот тип вопросов, дополняющая правильный ответ Betamos: используйте irb.
$ irb 2.2.0 :001 > require 'yaml' => true 2.2.0 :002 > puts({}.to_yaml) # original question --- {} => nil 2.2.0 :003 > puts({ mixed_types: [{}, "string", :symbol, {symbol: "value"}, nil, 3] }.to_yaml) --- :mixed_types: - {} - string - :symbol - :symbol: value - - 3 => nil
Я использую это всякий раз, когда не знаю, как что-то кодировать.
источник