Módulo: Mongoid::Criteria::Queryable

Inclui:
Agregavel, Expansível, Mesclável, Opcional, Armazenável , Seletivo
Incluído em:
Mongoid::Criteria
Definido em:
build/mongoid-8.1/lib/mongoid/criteria/queryable.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/key.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/smash.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/options.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/optional.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/pipeline.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/selector.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/storable.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/macroable.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/mergeable.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/aggregable.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/expandable.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/selectable.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/set.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/date.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/hash.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/time.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/array.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/range.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/ objeto.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/regexp.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/string.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/symbol.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extensions/boolean.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/numeric.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/date_time.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/nil_class.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/big_decimal.rb,
build/mongoid-8.1/lib/mongoid/criteria/queryable/extentions/time_with_zone.rb

Visão geral

Um queryable é qualquer objeto que precise do dsl do queryable injetado nele para construir queries MongoDB . Por exemplo, um Mongoid::Criteria é um Queryable.

Exemplos:

Inclua funcionalidades consultáveis.

class Criteria
  include Queryable
end

Definido sob namespace

Módulos: Agregable, Expandable, Extensões, macroable, Mesclável, Opcional, Seletivo, Armazenável Classes: Chave, Opções, Pipeline, Seletor, Smash

Recolhimento do Resumo do atributo de instância

Atributos incluídos de Opcional

#options, #options As opções de query.

Atributos incluídos de Agregable

#aggregating, #aggregating Sinalizador se estamos ou não agregando., #pipeline, #pipeline O agregação pipeline.

Atributos incluídos em Mergeable

#strategy, #strategy O nome da estratégia atual.

Recolhimento do Resumo do método de instância

Métodos incluídos de Opcional

#ascending, #batch_size, #collation, #comment, #cursor_type, #descending, forwardables, #hint, #limit, #max_scan, #max_time_ms, #no_timeout, #only, #order_by, #reorder, #skip, #slice, #snapshot, #sem

Métodos incluídos do macroable

#key

Métodos incluídos em Selectable

#atomic_selector

Métodos incluídos no Aggregable

#aggregating?, #group, #project, #unwind

Métodos incluídos no Mergeable

#and_with_operator, #intersect, #override, #reset_strategies!, # união

Métodos incluídos no Storageable

#add_field_expression, #add_logical_operator_expression, #add_one_expression, #add_operator_expression

Detalhes do atributo da instância

#aliasesObject (somente leitura)

Retorna o valor de aliases de atributo.



36
37
38
# File 'build/mongoid-8.1/lib/mongoid/criteria/queryable.rb', linha 36

def Aliases
  @aliases
end

#aliases Os aliases.(Thealiases.) ➤ Objeto (somente leitura)



36
# File 'build/mongoid-8.1/lib/mongoid/criteria/queryable.rb', linha 36

attr_reader :aliases

#serializersObjeto (somente leitura)

Retorna o valor dos serializadores de atributos.



39
40
41
# File 'build/mongoid-8.1/lib/mongoid/criteria/queryable.rb', linha 39

def serializadores, serializadores
  @serializers
end

#serializers Os serializadores.(Theserializers.) ➤ Objeto (somente leitura)



39
# File 'build/mongoid-8.1/lib/mongoid/criteria/queryable.rb', linha 39

attr_reader :serializers

Detalhes do método de instância

#==(outro) ➤ verdadeiro | false

Este queryable é igual a outro objeto? É verdadeiro se o seletor e as opções forem iguais.

Exemplos:

Os objetos são iguais?

queryable == criteria

Parâmetros:

  • Outro (Objeto)

    O objeto com o qual comparar.

Retorna:

  • (verdadeiro | falso)

    Se os objetos forem iguais.



50
51
52
53
# File 'build/mongoid-8.1/lib/mongoid/criteria/queryable.rb', linha 50

def ==(Outro)
  Método false a menos que Outro.is_a?(Consultável)
  seletor == Outro.seletor && opções == Outro.opções
end

#initialize(aliases = {}, serializadores = {}, associações = {}, aliased_associations = {}) {|_auto| ... } ➤ Objeto

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Inicialize a nova queryable. Irá se render ao bloco se um bloco for fornecido para objetos que precisam de comportamento adicional.

Exemplos:

Inicialize o queryable.

Queryable.new

Parâmetros:

  • Aliases (Hash) (padrão para: {})

    Os nomes alternativos de campo opcionais.

  • serializadores, serializadores (Hash) (padrão para: {})

    Os serializadores de campo opcionais.

  • Associações (Hash) (padrão para: {})

    As associações opcionais.

  • aliased_associations (Hash) (padrão para: {})

    As associações com nomes alternativos opcionais.

  • driver (Símbolo)

    O driver que está sendo usado.

Rendimento:

  • (_auto)

Parâmetros de rendimento:



68
69
70
71
72
73
74
75
# File 'build/mongoid-8.1/lib/mongoid/criteria/queryable.rb', linha 68

def inicializar(Aliases = {}, serializadores, serializadores = {}, Associações = {}, aliased_associations = {})
  @aliases, @serializers = Aliases, serializadores, serializadores
  @opções = Opções.Novo(Aliases, serializadores, serializadores, Associações, aliased_associations)
  @selector = Seletor.Novo(Aliases, serializadores, serializadores, Associações, aliased_associations)
  @pipeline = Pipeline.Novo(Aliases)
  @aggregating = nada
  rendimento(auto) se block_given?
end

#initialize_copy(outro) ➤ Objeto

Lidar com a criação de uma cópia via #clone ou #dup.

Exemplos:

Lidar com inicialização de cópia.

queryable.initialize_copy(criteria)

Parâmetros:

  • Outro (Query)

    A cópia original.



83
84
85
86
87
# File 'build/mongoid-8.1/lib/mongoid/criteria/queryable.rb', linha 83

def initialize_copy(Outro)
  @opções = Outro.opções.__deep_copy__
  @selector = Outro.seletor.__deep_copy__
  @pipeline = Outro.gasoduto.__deep_copy__
end