在 rails 中发送 json 中的回复

Send response in json in rails

我有类别的模型。我想发送这样的回复

{"1":"Food",2:"Clothes",3:"Shoes"}

我试过了

Category.all.map{ |k| { k.id.to_i => k.name  } }

但是它是这样发送的

[{"1": "Engineer"},{"2": "Doctor"}]

你可以这样做

Category.all.reduce({}) { |memo, obj| memo.merge(obj.id.to_s => obj.name) }