Necesito crear una clase de Ruby sobre la marcha, es decir, dinámicamente, que se deriva de ActiveRecord::Base
. Yo uso eval
por el momento:Crear una clase de Ruby sobre la marcha sin eval
eval %Q{
class ::#{klass} < ActiveRecord::Base
self.table_name = "#{table_name}"
end
}
¿Hay un equivalente, y por lo menos igual forma concisa a hacer esto sin usar eval
?
Esto es todo, gracias. Sé que las clases también son objetos; pero no sabía que es posible dar a la clase base un argumento y, en particular, sobre el bloque (en retrospectiva, debería haberlo adivinado). – DrTom