0
我有一個Model1
,嵌入一個Model2
,其中嵌入一個Model3
。是否有可能通過Model3
屬性獲取Model1
實例?Mongoid:embeds_one through?
我有一個Model1
,嵌入一個Model2
,其中嵌入一個Model3
。是否有可能通過Model3
屬性獲取Model1
實例?Mongoid:embeds_one through?
是的,這是可能的。你需要了解embeds_one
的工作原理。當你說:
embeds_one :model2
Mongoid做一些簡單的事情:
Hash
場稱爲model2
。Hash
的包裝,以便它像任何其他文檔一樣工作。Hash
和field
指定的任何其他字段中包含通常的_id
字段。所以你真的只是一堆嵌套哈希工作,您查詢像任何其他嵌入式哈希嵌入文檔:
Model1.where('model2.model3.some_field' => 11)