6

我正在尝试比较 ParseQuery 的一些日期。它不会给我错误,但它不会过滤日期。这是一些代码:

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

日期是 java.util.Date (不是 sql)

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

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

当我在 parse.com 上查看我的 ParseObjects 时,我看到这些对象有一个 dateFrom 和 dateTo。

谁能告诉我为什么它不过滤?谢谢

4

1 回答 1

3

我已经测试了日期比较与 Javascript SDK 一起使用。

(word是一个基本的解析模型)

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() 这样的秒数,并使用整数进行比较。

问候

于 2012-12-10T07:39:50.323 回答