我在寫一些Google App Engine代碼時出現奇怪的錯誤。DateTimeProperty在Google App Engine中將錯誤設置爲日期時間
我的程序包含這樣一些代碼:
import datetime
...
class Action(db.Model):
visibleDate = db.DateTimeProperty()
...
getActionQuery = Action.gql("WHERE user = :user AND __key__ = :key", user = user, key = self.request.get("key"))
theAction = getActionQuery.get()
....
theAction.visibleDate = datetime.datetime.strptime(self.request.get("visibleDate"), "%Y/%m/%d")
然而,這產生以下錯誤:
Traceback (most recent call last): File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/webapp/__init__.py", line 509, in __call__ handler.post(*groups) File "/Users/redbird/Developer/betterdo-it/main.py", line 132, in post theAction.visibleDate = datetime.datetime.strptime(self.request.get("visibleDate"), "%Y/%m/%d"), File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/db/__init__.py", line 472, in __set__ value = self.validate(value) File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/db/__init__.py", line 2308, in validate (self.name, self.data_type.__name__)) BadValueError: Property visibleDate must be a datetime
上爲什麼發生這種情況的任何想法?我已經測試過它,並且我知道我的時間正在進入,正在轉換正確,但是卻遇到了這個錯誤。
或許日期的格式不正確? 'self.request.get(「visibleDate」)'返回什麼? – jbochi
模型的定義中它不應該是'visibleDate = db.DateTimeProperty()'嗎? – jbochi
它是;只是一個錯字。我修好了它。 –