5

このコマンドから空の配列が得られるのは、何を間違っているのでしょうか?

Item.where(:load_date => Date.today + 2)

ここに私のRailsコンソールがあります:

.9.3-p194 :024 > Item.first.load_date
Item Load (0.3ms)  SELECT "items".* FROM "items" LIMIT 1
=> Fri, 24 May 2013 
1.9.3-p194 :025 > Item.where(:load_date => Date.today + 2)
Item Load (0.5ms)  SELECT "items".* FROM "items" WHERE "items"."load_date" = '2013-05-24'
=> []
1.9.3-p194 :026 > Item.first.load_date == Date.today + 2
Item Load (0.3ms)  SELECT "items".* FROM "items" LIMIT 1
=> true 

アイテムモデル:

... 
#  load_date       :date
...

class Item < ActiveRecord::Base
attr_accessible :bt_num, :dept, :formula, :item_code, :load_date, :prod_comments, :qc_comments, :qc_tech, :qty_in_kg, :qty_in_liters, :rm_ok_by, :series, :status, :time_to_produce, :vat
...
4

1 に答える 1

1

これらを試してください

Item.where(:load_date => (Date.today + 2).strftime)
  or 
Item.where("Date(load_date) =?", (Date.today + 2).strftime)
于 2013-05-22T08:58:13.390 に答える