Decorador mínimo en Ruby en 30 minutos
2025-06-12
El autor necesitaba agregar lógica relacionada a la vista a un modelo Teacher en un proyecto Rails, pero no pudo usar la gema draper debido a la incompatibilidad de versiones. Así que construyó un decorador mínimo desde cero, inicialmente agregando comportamientos adicionales, solo para abstraerlos más tarde. La publicación detalla el uso del `method_missing` de Ruby para manejar las llamadas a métodos indefinidos y simplificar la implementación del decorador mediante la herencia y `SimpleDelegator`. El resultado final es un decorador limpio y eficiente, resolviendo problemas de integración con el comportamiento predeterminado de Rails.
Desarrollo