2014-02-20 144 views
1

我使用objmongodb作爲工具來與我的工作的mongodb進行通信。ObjcMongoDB keypath謂詞匹配nsdate

我需要爲所有文檔創建一個查詢字段pickup pickup。推薦等於今天的日期。使用

心中已經試過:

[predicate keyPath:@"pickup.recommended" matches:[NSDate date]]; 

以及

[predicate keyPath:@"pickup.recommended" matches:@"2014-02-20"]; 

但所有的查詢返回零個結果與添加謂詞到MongoFindRequest。在我添加該語句之前查詢正在工作。

+0

您是否嘗試過擴大搜索範圍,例如:從下午的午夜到下午的午夜?或者在所有日期上覆蓋中午或午夜的時間,那麼每天實際上是相等的? '[NSDate date]'返回當前時間,這與幾分鐘或幾秒前的'[NSDate date]'不同。 – paulmelnikow

+0

在BSON/Mongo中,日期解析爲最接近的毫秒。 ObjCMongoDB將NSDate對象序列化爲BSON的日期時間。 – paulmelnikow

回答

1

要調試這個,我會建議使用-v標誌運行mongod。這將導致它記錄所有的查詢,並且從中你可能會更容易地看到爲什麼查詢沒有返回你期望的結果。