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(_document, _name, key, mods, new, _old) ➤ objeto
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.
69 70 71 72 73 74 75 76 77 78 79 80 81 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 69 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. Método a menos que default_val.respond_to?(:call) define_default_method([:klass]) 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.
13 14 15 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 13 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.
13 14 15 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 13 def etiqueta @label end |
#name ➤ Objeto
Define o comportamento dos campos definidos no documento. Defina leitores para as variáveis de instância.
13 14 15 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 13 def name @name end |
#opções ➤ Objeto
Define o comportamento dos campos definidos no documento. Defina leitores para as variáveis de instância.
13 14 15 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 13 def @opções end |
Detalhes do método de instância
#add_atomic_changes(_document, _name, key, mods, new, _old) ⇒ objeto
Adiciona as alterações atômicas para este tipo de campo redimensionável.
campo.add_atomic_changes(doc, "chave", {}, [], [])
28 29 30 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 28 def add_atomic_changes(document, _name, chave, mods, Novo, _old) mods[chave] = Novo end |
#associação ➤ Metadados
Obtenha os metadados do campo se for uma chave estrangeira.
119 120 121 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 119 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.
41 42 43 44 45 46 47 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 41 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?
55 56 57 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 55 def foreign_key? false end |
#preguiçoso? ➤ verdadeiro | false
Este campo faz avaliação padrão preguiçosa?
89 90 91 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 89 def preguiçoso? false end |
#localize_present? ➤ verdadeiro | false
O campo localizado está aplicando valores para estar presente?
109 110 111 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 109 def localize_present? false end |
#localizado? ➤ verdadeiro | false
O campo é localizado ou não?
99 100 101 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 99 def localizado? false end |
#object_id_field? ➤ verdadeiro | false
O campo é um BSON::ObjectId?
129 130 131 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 129 def object_id_field? @object_id_field ||= (type == BSON::ObjectId) end |
#pre_processed? ➤ verdadeiro | false
O campo pré-processa seu valor padrão?
139 140 141 142 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 139 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.
150 151 152 |
# Arquivo 'lib/mongoid/fields/standard.rb', linha 150 def type @type ||= [:type] || Objeto end |