Mongoid:为embeds_one抑制_id?

问题描述 投票:0回答:1

我正在寻找一种方法来抑制embeds_one关联的子类中_id字段的生成,但是找不到解决方法。

任何人都知道如何做到这一点吗?

如果为子类创建embeds_one关联,则不需要_id字段,因为在父类中只会嵌入一个子。

Mongoid 7.0,MongoDB 4.2。

在NodeJS / Javascript生态系统中使用Mongoose时,这很容易。您只需指定

{ _id: false }

在Mongoose模式的选项中。在Ruby on Rails世界中为Mongoid寻找类似的东西。

谢谢!

mongoid
1个回答
0
投票

Mongoid在内部使用默认值在每个文档上定义_id字段,但是您可以重新定义此字段以使其没有默认值。

class Foo
  include Mongoid::Document

  embeds_one :bar
end

class Bar
  include Mongoid::Document

  embedded_in :foo

  field :_id, type: String
end
© www.soinside.com 2019 - 2024. All rights reserved.