sql >> Databáze >  >> RDS >> Mysql

když jsem používal alias find_by_sql, byl jsem zmatený

Aktivně načítáte Books z databáze, takže se AREL pokusí namapovat váš výběrový příkaz na model. V tomto případě mapuje datum na borrow_date atribut a převede jej na objekt Date. Původní formátování, které jste vybrali, pak již není relevantní, protože bylo analyzováno na objekt, který má svá vlastní pravidla pro tisk data.

Váš druhý výběr funguje, protože ve vaší Book pravděpodobně žádný atribut tohoto jména není model, takže jej nelze namapovat na konkrétní typ, takže prostý String se používá.

Můžete jednoduše přidat funkci jako formatted_borrow_date k vašemu modelu nebo použijte pomocníka, který zformátuje borrow_date pomocí metod ruby, abyste se vyhnuli pevně zakódovanému SQL a formátování data.




  1. Seskupit podle měsíce a roku v MySQL

  2. Nelze se připojit k MariaDB pomocí DBeaver

  3. Načtěte data z CSV do bitového pole v mysql

  4. Kaskádové pole se seznamem přístupových formulářů v rozevírací nabídce nic nezobrazuje