Какова цель встраивания одного в монголоида?
Я понимаю концепцию использования embeds_many
, но какой цели служит embeds_one
, особенно если у вас есть только одно поле во встроенном документе, как показано в Примере 1-N embedded document на mongoid.org не лучше ли создать поле в Родительском документе?
Пример на mongoid.org:
class Band
include Mongoid::Document
embeds_one :label
end
class Label
include Mongoid::Document
field :name, type: String
embedded_in :band
end
1 ответ:
В Примере они привели только один пример поля, чтобы показать структуру определения. Во внедренных документах можно ввести несколько полей.
Embedds_one используется, когда во встроенном документе имеется несколько полей, которые вы не хотите хранить в основном документе. Когда некоторые поля не являются обязательными для всех документов, мы не вводим их в основной документ, потому что это сделает документ тяжелым. Вместо него мы вводим встроенный документ, который вы можете создать на основе требование основного документа.