Módulo: Mongoid::Criteria::Translator Private

Estendido por:
Tradutor
Incluído em:
Tradutor
Definido em:
lib/mongoid/criteria/translator.rb

Visão geral

Este módulo faz parte de uma API privada. Você deve evitar usar este módulo, se possível, pois ele pode ser removido ou alterado no futuro.

Este é um módulo assistente para traduzir valores Ruby atômicos e compostos em componentes correspondentes de query e opção. Originalmente implementada como patches para classes principais, essa abordagem geralmente cai em des favor, pois ela vaza muito para o namespace público.

Recolhimento do Resumo do método de instância

Detalhes do método de instância

#to_direction(valor) ➤ Hash | Numérico

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.

Converte o valor fornecido em uma especificação de direção para uso na classificação.

Exemplos:

Converta o valor em uma direção.

Translator.to_direction(:desc)
Translator.to_direction("1")
Translator.to_direction(-1)
Translator.to_direction(score: { "$meta": "textScore" })

Parâmetros:

  • valor (Hash | Numérico | string | Símbolo)

    O valor a ser convertido.

Retorna:

  • (Hash | Numérico)

    A direção.



27
28
29
30
31
32
33
34
35
36
37
38
39
40
# Arquivo 'lib/mongoid/criteria/translator.rb', linha 27

def to_direction(valor)
  caso valor
  quando Hash
    valor
  quando Numérico
    valor
  quando String
    /desc/i.Partida?(valor) ? -1 : 1
  quando Símbolo
    to_direction(valor.to_s)
  mais
    aumentar ArgumentError, "não é possível converter #{valor.inspecionar} (#{valor.classe}) para uma especificação de direção"
  end
end