2013-05-22 6 views
5

मैं गलत तरीके से क्या कर रहा हूं जो मुझे इस आदेश से एक खाली सरणी दे रहा है?मेरा मॉडल क्यों है। कहीं() एक खाली सरणी लौटा रहा है (जब मुझे यकीन है कि मैचों हैं)?

.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 

आइटम मॉडल::

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

यहाँ मेरी रेल कंसोल है

... 
# 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 
... 
+0

डेटाबेस में 'load_date' का मूल्य क्या है? – xdazz

+0

आपका डेटाबेस क्या है? मैंने यहां mysql पर परीक्षण किया है और यह –

+0

काम करता है डेटबेस 3 वर्ग है। Item.first.load_date == शुक्र, 24, मई 2013 और कक्षा 'तिथि' – collenjones

उत्तर

1

प्रयास करें इन

Item.where(:load_date => (Date.today + 2).strftime) 
    or 
Item.where("Date(load_date) =?", (Date.today + 2).strftime) 
+0

दूसरा काम करता है लेकिन पहले नहीं (पहले भी रिक्त हो जाता है)। तारीख की स्वरूपण क्यों मायने रखती है ?? और पहला काम क्यों नहीं होगा ?? – collenjones

+0

load_date डेटाटाइम का कॉलम है, लेकिन हम केवल वहां से तारीख चाहते हैं इसलिए मैंने दिनांक (load_date) का उपयोग किया .... और स्ट्रेटटाइम का उपयोग किया क्योंकि यह प्रारूप (दिनांक.today + 2) प्रारूप में "2013-05-24" में परिवर्तित होगा और डेटाबेस मानों में "24 मई, 2013" के बजाय "2013-05-24 12:12" के रूप में सहेजा जाता है " –

+0

आइटम.फर्स्ट.लोड_डेट मुझे" 2013-05-24 12:12 "क्यों नहीं दिखाएगा" शुक्र, 24 मई 2013 "? जब मैं Item.first.load_date की कक्षा की जांच करता हूं, तो यह भी 'तिथि' है। मैं मदद की सराहना करता हूं, मैं बस यह समझने की कोशिश कर रहा हूं कि क्या हो रहा है। – collenjones

संबंधित मुद्दे