Saltar al contenido

Crear variables de módulo en Ruby

este problema se puede solucionar de diversas maneras, por lo tanto te compartimos la que en nuestra opinión es la respuesta más completa.

Solución:

Ruby admite de forma nativa variables de clase en módulos, por lo que puede usar variables de clase directamente, y no algunas variables de proxy o pseudo-clase:

module Site
  @@name = "StackOverflow"

  def self.setName(value)
    @@name = value
  end

  def self.name
    @@name
  end
end

Site.name            # => "StackOverflow"
Site.setName("Test")
Site.name            # => "Test"

Si no necesita llamarlo desde una instancia, simplemente puede usar una variable de instancia dentro del cuerpo del módulo.

module SomeModule
  module_function
  def param; @param end
  def param= v; @param = v end
end

SomeModule.param
# => nil
SomeModule.param = 1
SomeModule.param
# => 1

La variable de instancia @param entonces pertenecerá al módulo SomeModuleque es una instancia de la Module clase.

puede establecer una variable de instancia de clase en el módulo.

module MyModule
   class << self; attr_accessor :var; end
end

MyModule.var = 'this is saved at @var'

MyModule.var    
=> "this is saved at @var"

Ten en cuenta difundir esta reseña si te fue útil.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *