MongoMapper禁用嵌入式ID

时间:2011-11-12 21:07:38

标签: ruby mongomapper

是否可以为嵌入式文档禁用_id?

例如,如果父级具有嵌入式子文档。如果我不打算从其他任何地方引用这个孩子,那么这个孩子的身份似乎毫无意义。

class Parent
  include MongoMapper::Document
  one :child
  key :name
end

class Child
  include MongoMapper::EmbeddedDocument
  key :name
end

parent = Parent.new(:name => 'parent',
  :child => Child.new(:name => 'child'))

puts parent.to_json

{"id":"4ebeddde51d9e56dcb000006","name":"parent",
"child":{
    "id":"4ebeddde51d9e56dcb000005",
    "name":"child"}}

1 个答案:

答案 0 :(得分:1)

我记得在某一点上正在谈论删除嵌入式的_id字段。最好的办法是自己修补,然后发送拉动请求。

否则,没有用于删除id的配置选项。如果你喜欢冒险,你可能会覆盖to_mongo。