2016-10-01 3 views
1

私はレコードを照会して私が期待しているものを得ることができないようです。MongoDBとpymongoのタイムゾーンの日付を扱う

"date_added": { 
     "$date": "2016-04-19T18:47:54.101Z" 
    }, 

をしかし、私は結果を取得していない:例えば私はMongoDBの中で次の日付を指定している

today = datetime.datetime.today() 
past = today + timedelta(days=-200) 
results = mongo.stuff.find({"date_added": {"gt": past}}, {"id":1}) 

を探しています!これはMongoDBの日付に表示されるタイムゾーンに設定されています。

答えて

1

が必要になります。

+0

ああ!私はいつも私を取得します! – disruptive

1

認識可能なdatetimeオブジェクト(タイムゾーン情報付き)を使用します。

# E.g. with UTC timezone : 
import pytz 
import datetime 

today = datetime.datetime.today() 
past = today + timedelta(days=-200) 

pytc.utc.localize(past) 

results = mongo.stuff.find({"date_added": {"gt": past}}, {"id":1}) 

pytz.timezone('US/Mountain')

P.S.ような何かをしようと、ローカライズするために、異なるタイムゾーンを使用するには

は、次のコードで試してみてください:

results = mongo.stuff.find({"date_added": {"$gt": past}}, {"id":1}) 

あなたは$のGTで$記号を忘れてしまったあなたは、これは単なる入力ミスであるpip install pytz

+0

私はこれを試しました - どのような亜種ですか - しかし悲しいことにはうまくいきませんでした。 – disruptive

関連する問題