Du laddar aktivt Books
från databasen, så AREL försöker mappa din select-sats till modellen. I det här fallet mappar den datumet till borrow_date
attribut och konverterar det till ett Date-objekt. Den ursprungliga formateringen du valde är då inte längre relevant eftersom den tolkades till ett objekt som har sina egna regler för att skriva ut datumet.
Ditt andra val fungerar eftersom det förmodligen inte finns något attribut för det namnet på din Book
modell, så den kan inte mappas till en specifik typ, så vanlig String
används.
Du kan helt enkelt lägga till en funktion som formatted_borrow_date
till din modell eller använd en hjälpare för att få den att formatera borrow_date
använder ruby-metoder för att undvika hårdkodad SQL och datumformatering.