Mysql
 sql >> база данни >  >> RDS >> Mysql

когато използвах псевдоним find_by_sql, се обърках

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

Вторият ви избор работи, тъй като вероятно няма атрибут на това име във вашата Book модел, така че не може да бъде съпоставен с конкретен тип, така че обикновен String се използва.

Можете просто да добавите функция като formatted_borrow_date към вашия модел или използвайте помощник, за да го накарате да форматира borrow_date използвайки методи на ruby, за да избегнете твърдо кодирания SQL и форматиране на датата.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Извличане на последната (най-новата) различна най-висока стойност

  2. MySQL:Вземете най-новото съобщение от 2 таблици, които са свързани една с друга

  3. защо това не изтегля данни от 7 дни назад?

  4. Изпълнете оператор чрез пряк път в MySQLWorkbench

  5. Каква е разликата между mysql и mysql2 gem