2016-04-04 57 views
1

當我在GAE數據存儲中保存日期時,它會隨時間和時區保存。我只想保存日期,如yyyy/MM/dd沒有時區,一個nd我想把日期作爲數據類型不是字符串。在Google App Engine中保存沒有時間和時區的日期

怎麼辦?

+0

你是什麼意思w/o時區?世界標準時間?我相信它已經在UTC –

+0

我的意思是,它保存在「2016-04-22(16:00:00.000)AKDT」格式。但我想將它保存爲2016-04-22 only(no time&timezone) –

+1

爲什麼不把時間設置爲午夜?基本上,一個日期對象是一個「長」的Unix微縮日誌。所以你所要做的就是減少當天午夜的'mod 1000 * 60 * 60 * 24'。 – konqi

回答

0

這有點奇怪,但是當您在數據存儲中將日期保存到DateProperty時,Google實際上會將其存儲爲日期時間。請參閱here

我相信當你檢索它時,你會得到一個與你的日期時間,但由於時間只是零,很容易將其轉換爲日期並放棄時間。

如果這是一個問題,那麼您可以使用PickleProperty在數據存儲中存儲實際的Python日期對象(假設您正在使用Python)。

+0

我實際上使用的是java,我使用startDate的過濾器從GAE檢索記錄等於。而這只是沒有時區的日期。但是這裏DB中的時區不同,所以查詢給出null。即使日期相同。 –

+0

問題是,時區還會根據服務器上設置的時區保存以小時爲單位的偏移量 – EliuX

相關問題