如何在json响应中将mongo id作为字符串返回

Akh*_*hil 6 ruby-on-rails mongodb mongoid ruby-on-rails-4

我正在使用Rails 4.1.5和Mongoid 4.0.我的apis正在将mongo id作为哈希返回

{
_id: {
$oid: "541e79bc616b684e75000000"
}
created_at: "2014-09-21T07:09:48.599Z"
}
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西

{
id: "541e79bc616b684e75000000"
created_at: "2014-09-21T07:09:48.599Z"
}
Run Code Online (Sandbox Code Playgroud)

我已经检查了这个问题,但我不确定我需要在哪个文件中添加此答案中提到的更改

Zak*_*wan 11

您需要在config/initializers中创建一个文件并将代码放在那里.

更新:

使用以下代码:

module BSON
  class ObjectId
    def to_json(*args)
      to_s.to_json
    end

    def as_json(*args)
      to_s.as_json
    end
  end
end
Run Code Online (Sandbox Code Playgroud)