Módulo: Mongoid::Atributos::Solo lectura::Métodos de clase

Definido en:
lib/mongoid/atributos/readonly.rb

Colapso del resumen del método de instancia

Detalles del método de instancia

#attr_readonly(*nombres) ⇒ Objeto

Nota:

Cuando una clase padre contiene atributos de solo lectura y luego es

Define un atributo como de solo lectura. Esto garantiza que su valor solo se establezca cuando el documento es nuevo o se está creando. En otros casos, se ignorará la escritura del campo, excepto en #remove_attribute y #update_attribute, donde se generará un error.

Si una clase hija la hereda, esta heredará los atributos de solo lectura de la clase padre al momento de su creación. La actualización de la clase padre no se propaga posteriormente a las clases hijas.

Ejemplos:

Marcar campos como de sólo lectura.

class Band
  include Mongoid::Document
  field :name, type: String
  field :genre, type: String
  attr_readonly :name, :genre
end

Parámetros:

  • *nombres (Symbol...)

    Los nombres de los campos.



70
71
72
73
74
75
# Archivo 'lib/mongoid/attributes/readonly.rb', línea 70

def attr_solo lectura(*nombres)
  yo.atributos de solo lectura = yo.atributos de solo lectura.dup
  nombres.cada hacer |Nombre|
    yo.atributos de solo lectura << nombre_del_campo_de_base_de_datos(Nombre)
  end
end