Rails docs tiene esta información para Object#blank?
Rails Object # blank? frente a String # ¿vacío? confusión
Un objeto está en blanco si es falso, vacío, o una cadena de espacios en blanco. Por ejemplo, "", "", nil, [] y {} están en blanco.
Pero la fuente para ese método es la siguiente:
# File activesupport/lib/active_support/core_ext/object/blank.rb, line 12
def blank?
respond_to?(:empty?) ? empty? : !self
end
Ahora, cuando abro la línea de comandos pequeño y práctico y tipo ruby -e 'p " ".empty?'
devuelve falso. Eso significa que Rails debería decir que este es un valor en blanco cuando claramente no lo es. ¡Pero! Abro mi rails console
y escribo " ".empty?
y obtengo el falso como mi línea de comando recta anterior. Pero, escribo "" .blank? y me hago realidad, como Rails me promete.
¿Qué me falta para comprender cómo funciona el método blank?
de Rails con el método empty?
de String?
Ah, gracias! Tan pronto como SO me lo permita, marcaré el tuyo como respuesta. – jxpx777