2012-05-21 10 views
6

के साथ तिथियों की तुलना करें मैं एक ParseQuery के लिए कुछ तिथियों की तुलना करने की कोशिश कर रहा हूँ। यह मुझे त्रुटियां नहीं देता है लेकिन यह तिथियों को फ़िल्टर नहीं करता है। यहाँ कुछ कोड है:Parse.com

if(dateFrom!=null){ 
     query.whereLessThanOrEqualTo("from", dateFrom); 
    } 
    if(dateTo!=null){ 
     query.whereGreaterThanOrEqualTo("to", dateTo); 
    } 

तारीख java.util.Date (नहीं एसक्यूएल) है

Date dateFrom = new Date(fromYear,fromMonth,fromDay,fromHour,fromMinute); 

    Date dateTo = new Date(toYear,toMonth,toDay,toHour,toMinute); 

जब मैं parse.com पर मेरे ParseObjects को देखो, मैं देख रहा हूँ वस्तुओं एक dateFrom और dateTo मिला ।

क्या कोई मुझे बता सकता है कि यह फ़िल्टर क्यों नहीं करता है? धन्यवाद

+0

क्या आपको कभी इसका उत्तर मिला? –

+0

अभी तक वास्तव में नहीं .. मैं इसे बाद में फ़िल्टर करता हूं अब मैं इसे पारसे के लोगों से पूछूंगा। यदि मुझे कोई जवाब मिलता है, तो मैं इसे – dumazy

+1

पर रखूंगा यदि आपको इसके लिए कोई जवाब नहीं मिला है: मेरा मानना ​​है कि आपकी क्वेरी बाधाओं को गलत आदेश दिया गया है, तो आपको 'dateTo' से कम या बराबर होना चाहिए और 'दिनांक से' के लिए से अधिक या बराबर। –

उत्तर

3

मैंने परीक्षण किया है कि दिनांक तुलना जावास्क्रिप्ट एसडीके के साथ काम करती है।

var d = new Date(); 
var word = new Word();   
word.set("dateTo", new Date (2012, 01, 01)); 
word.save();   

var dateTo = new Date (2012, 12, 31); 

var query = new Parse.Query(Word); 
query.greaterThan("dateTo", dateTo); 

query.find({ 
    success: function(results) { 
    alert("Successfully retrieved " + results.length + " scores."); 
    }, 
    error: function(error) { 
    alert("Error: " + error.code + " " + error.message); 
    } 
}); 

एक समाधान आप हमेशा() Date.getTime तरह सेकंड में अपने दिनों को हस्तांतरण और तुलना के लिए पूर्णांकों इस्तेमाल कर सकते हैं के रूप में (शब्द एक बुनियादी पार्स मॉडल है)।

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