no puedo averiguar el bloque adecuado inicializar¿Cómo inicializar la clase en bloque en Ruby?
class Foo
attr_accessor :bar
end
obj = Foo.new do |a|
a.bar = "baz"
end
puts obj.bar
esperar "Baz" en lugar de obtener nula
¿Cuál es el encantamiento adecuado para inicializadores de clase en el bloque de rubí?
El 'attr_accessor' no puede funcionar en esa forma y nunca se llama al bloque. –
Gracias, tienes razón al respecto, lo arreglé para que sea código "funcional" ahora – Doug
Correcto, entiendo que no se llama (lo que explica por qué no funciona). Me gusta la idea de "tocar" a continuación, ya que me permite usar herramientas como FactoryGirl (que requieren inicializadores predeterminados) sin tener que anular las nuevas. – Doug