Активно зареждате Books от базата данни, така че AREL се опитва да съпостави вашето избрано изявление с модела. В този случай той съпоставя датата с borrow_date атрибут и го преобразува в обект Date. След това избраното от вас оригинално форматиране вече не е уместно, тъй като е анализирано на обект, който има свои собствени правила за отпечатване на датата.
Вторият ви избор работи, тъй като вероятно няма атрибут на това име във вашата Book модел, така че не може да бъде съпоставен с конкретен тип, така че обикновен String се използва.
Можете просто да добавите функция като formatted_borrow_date към вашия модел или използвайте помощник, за да го накарате да форматира borrow_date използвайки методи на ruby, за да избегнете твърдо кодирания SQL и форматиране на датата.