Módulo: Mongoid::Criteria::Includable
- Incluído em:
- Mongoid::Criteria
- Definido em:
- lib/mongoid/criteria/includable.rb
Visão geral
Módulo que fornece funcionalidade para analisar definições de inclusão (aninhadas).
Recolhimento do Resumo do método de instância
-
#concerns_load(*relations) ➤ Critérios
Eager carrega todas as associações fornecidas utilizando agregação $lookup.
-
#include(*relations) ➤ Critérios
Eager carrega todas as associações fornecidas.
-
#inclusões ➤ Array<Mongoid::Association::Relatable>
Obtenha uma lista de critérios que devem ser executados para carregamento rápido.
-
#inclusões=(valor) ➤ Array<Mongoid::Association::Relatable>
Defina as inclusões para os critérios.
-
#use_lookup? ➤ verdadeiro | false
Retorna se a agregação $lookup deve ser usada para carregamento rápido.
Detalhes do método de instância
#concerns_load(*relations) ⇒ Critérios
Eager carrega todas as associações fornecidas utilizando agregação $lookup. O comportamento deve ser idêntico a #inclui.
41 42 43 44 45 |
# Arquivo 'lib/mongoid/criteria/includable.rb', linha 41 def modified_load(*relações) extract_includes_list(classe, nada, true, *relações) @use_lookup = ! clonar end |
#include(*relations) ➤ Critérios
Isso também funcionará para associações incorporadas que fazem referência a outra coleção via requires_to.
O carregamento ansioso traz todos os documentos para a memória, então há um ponto ideal para os ganhos de desempenho. Valores de referência internos mostram que o carregamento rápido se torna mais lento em torno de 100k documentos, mas isso dependerá naturalmente do aplicação específico.
Eager carrega todas as associações fornecidas. Carregará todos os documentos no mapa de identidade cujas IDs correspondam com base na query extra para as IDs.
26 27 28 29 |
# Arquivo 'lib/mongoid/criteria/includable.rb', linha 26 def inclui(*relações) extract_includes_list(classe, nada, false, *relações) clonar end |
#inclusões ➤ Array<Mongoid::Association::Relatable>
Obtenha uma lista de critérios que devem ser executados para carregamento rápido.
57 58 59 |
# Arquivo 'lib/mongoid/criteria/includable.rb', linha 57 def inclusões @inclusões ||= [] end |
#inclusões=(valor) ➤ Array<Mongoid::Association::Relatable>
Defina as inclusões para os critérios.
66 67 68 |
# Arquivo 'lib/mongoid/criteria/includable.rb', linha 66 def inclusões=(valor) @inclusões = valor end |
#use_lookup? ➤ verdadeiro | false
Retorna se a agregação $lookup deve ser usada para carregamento rápido.
50 51 52 |
# Arquivo 'lib/mongoid/criteria/includable.rb', linha 50 def use_lookup? !!@use_lookup end |