2012-05-21 20 views
6

Estoy tratando de comparar algunas fechas para un ParseQuery. No me da errores pero simplemente no filtra las fechas. Aquí hay algo de código:Comparar las fechas con Parse.com

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

fecha es java.util.Date (no SQL)

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

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

cuando miro a mis ParseObjects en parse.com, veo los objetos consiguieron un dateFrom y dateTo .

¿Alguien puede decirme por qué no se filtra? Gracias

+0

¿Alguna vez ha encontrado una respuesta para esto? –

+0

Todavía no en realidad ... Solo lo filtro después por ahora Se lo preguntaré a la gente de Parse. Si recibo una respuesta, la pondré aquí – dumazy

+1

Si no ha encontrado una respuesta para esto: creo que sus restricciones de consulta están ordenadas incorrectamente, debe tener menos o igual que en 'dateTo' y el mayor o igual que para 'dateFrom'. –

Respuesta

3

He probado que las comparaciones de fechas funcionan con el SDK de Javascript.

(palabra es un modelo de análisis básico)

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); 
    } 
}); 

Como solución siempre se puede transferir sus días en segundos como date.getTime() y el uso de números enteros para la comparación.

saludos

Cuestiones relacionadas