Se você estiver usando o Mongoid, aqui está uma solução que faz com que você não precise adicionar um método
def id; object._id.to_s; end
para cada serializador Adicione o seguinte inicializador do Rails
Mongóide 3.x
module Moped
module BSON
class ObjectId
alias :to_json :to_s
alias :as_json :to_s
end
end
end
Mongóide 4
module BSON
class ObjectId
alias :to_json :to_s
alias :as_json :to_s
end
end
Serializador de modelo ativo para
Building
class BuildingSerializer < ActiveModel::Serializer
attributes :id, :name
end
JSON resultante
{
"buildings": [
{"id":"5338f70741727450f8000000","name":"City Hall"},
{"id":"5338f70741727450f8010000","name":"Firestation"}
]
}
Este é um patch de macaco sugerido por brentkirby e atualizado para o Mongoid 4 por arthurnn