Objeto Rails # em branco? vs. String # vazia? confusão

Documentos do Rails tem esta informação paraObject#blank?

Um objeto está em branco se for falso, vazio ou uma sequência de espaços em branco. Por exemplo, “”, ““, nulo, [] e {} estão em branco.

Mas a fonte desse método é assim:

# File activesupport/lib/active_support/core_ext/object/blank.rb, line 12
def blank?
    respond_to?(:empty?) ? empty? : !self
end

Agora, quando abro minha pequena linha de comando e digitoruby -e 'p " ".empty?' retorna falso. Isso significa que o Rails deve dizer que esse é um valor em branco quando claramente não é. Mas! Eu abro meurails console e eu digito" ".empty? e ficar falso como minha linha de comando direta anterior. Mas digito "" .blank? e eu sou verdadeiro como o Rails me promete.

O que estou faltando para entender como o Rails 'blank? O método funciona com oempty? método de String?

questionAnswers(1)

yourAnswerToTheQuestion