Classificação: Mongoide::Fields::Padrão
- Herda:
-
Objeto
- Objeto
- Mongoid::Fields::Padrão
- Estendido por:
- Encaminhável
- Definido em:
- lib/mongoid/fields/standard.rb
Visão geral
Representa uma definição de campo padrão (nome, tipo, etc.) usada para impor uma estrutura de esquema consistente aos documentos BSON que o Mongoid persiste.
Subclasses conhecidas diretas
Recolhimento do Resumo do atributo de instância
-
#default_val ➤ Objeto
Define o comportamento dos campos definidos no documento.
-
#rótulo ➤ Objeto
Define o comportamento dos campos definidos no documento.
-
#name ➤ Objeto
Define o comportamento dos campos definidos no documento.
-
#opções ➤ Objeto
Define o comportamento dos campos definidos no documento.
Recolhimento do Resumo do método de instância
-
#add_atomic_changes(documento, name, key, mods, new, old) ➤ Object
Adiciona as alterações atômicas para este tipo de campo redimensionável.
-
#association ⇒ Metadata
Obtenha os metadados do campo se for uma chave estrangeira.
-
#eval_default(doc) ➤ Objeto
Avalie o valor padrão e retorne-o.
-
#foreign_key? ➤ verdadeiro | false
Este campo é uma chave estrangeira?
-
#inicializar(nome, opções = {}) ➤ Padrão
construtor
Crie o novo campo com um nome e opções adicionais opcionais.
-
#preguiçoso? ➤ verdadeiro | false
Este campo faz avaliação padrão preguiçosa?
-
#localize_present? ➤ verdadeiro | false
O campo localizado está aplicando valores para estar presente?
-
#localizado? ➤ verdadeiro | false
O campo está localizado ou não?
-
#object_id_field? ➤ verdadeiro | false
O campo é um BSON::ObjectId?
-
#pre_processed? ➤ verdadeiro | false
O campo pré-processa seu valor padrão?
-
#type ➤ Class
Obtenha o tipo deste campo - inferido a partir do nome da classe.
Detalhes do construtor
#inicializar(nome, opções = {}) ➤ Padrão
Crie o novo campo com um nome e opções adicionais opcionais.
71 72 73 74 75 76 77 78 79 80 81 82 83 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 71 def inicializar(name, = {}) @name = name @opções = @label = [:label] @default_val = [:default] # @todo: Durran, altere a API em 4.0 para usar a classe como parâmetro. # Isto está aqui temporariamente para resolver #2529 sem alterar o # assinatura do construtor. se default_val.respond_to?(:call) define_default_method([:klass]) end end |
Detalhes do atributo da instância
#default_val ➤ Objeto
Define o comportamento dos campos definidos no documento. Defina leitores para as variáveis de instância.
15 16 17 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 15 def default_val @default_val end |
#rótulo ➤ Objeto
Define o comportamento dos campos definidos no documento. Defina leitores para as variáveis de instância.
15 16 17 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 15 def etiqueta @label end |
#name ➤ Objeto
Define o comportamento dos campos definidos no documento. Defina leitores para as variáveis de instância.
15 16 17 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 15 def name @name end |
#opções ➤ Objeto
Define o comportamento dos campos definidos no documento. Defina leitores para as variáveis de instância.
15 16 17 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 15 def @opções end |
Detalhes do método de instância
#add_atomic_changes(documento, name, key, mods, new, old) ➤ Object
Adiciona as alterações atômicas para este tipo de campo redimensionável.
campo.add_atomic_changes(doc, “chave”, {}, [], [])
30 31 32 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 30 def add_atomic_changes(documento, name, chave, mods, Novo, antigo) mods[chave] = Novo end |
#associação ➤ Metadados
Obtenha os metadados do campo se for uma chave estrangeira.
121 122 123 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 121 def associação @association ||= [:association] end |
#eval_default(doc) ➤ Objeto
Avalie o valor padrão e retorne-o. Irá lidar com a serialização, chamadas de proc e duplicação, se necessário.
43 44 45 46 47 48 49 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 43 def eval_default(doc) se Campos = doc.__selected_fields avaliada_default(doc) se incluído?(Campos) mais avaliada_default(doc) end end |
#foreign_key? ➤ verdadeiro | false
Este campo é uma chave estrangeira?
57 58 59 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 57 def foreign_key? false end |
#preguiçoso? ➤ verdadeiro | false
Este campo faz avaliação padrão preguiçosa?
91 92 93 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 91 def preguiçoso? false end |
#localize_present? ➤ verdadeiro | false
O campo localizado está aplicando valores para estar presente?
111 112 113 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 111 def localize_present? false end |
#localizado? ➤ verdadeiro | false
O campo é localizado ou não?
101 102 103 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 101 def localizado? false end |
#object_id_field? ➤ verdadeiro | false
O campo é um BSON::ObjectId?
131 132 133 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 131 def object_id_field? @object_id_field ||= (type == BSON::ObjectId) end |
#pre_processed? ➤ verdadeiro | false
O campo pré-processa seu valor padrão?
141 142 143 144 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 141 def pre_processed? @pre_processed ||= ([:pre_processed] || (default_val && !default_val.is_a?(::Proc))) end |
#type ➤ Class
Obtenha o tipo deste campo - inferido a partir do nome da classe.
152 153 154 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 152 def type @type ||= [:type] || Objeto end |