Как запросить указанные минуты из вида datetime в gae datastore? например: "хх: 20: хх" - PullRequest
0 голосов
/ 30 ноября 2011

У меня проблема с использованием хранилища данных Google App Engine.

Мой класс БД:

class pm25(db.Model):
    pttime=db.DateTimeProperty()

Хранилище данных:

pttime
2011-11-01 12:00:00
2011-11-01 12:20:00
2011-11-02 08:00:00
.....

Что я хочу сделать, это получитьсущности, время которых 20 в любой час. Например: XXXX-XX-XX XX: 20: XX Как мне написать этот gql?

Заранее спасибо

1 Ответ

3 голосов
/ 30 ноября 2011

Этот запрос невозможен для модели выше, так как минуты не индексируются. Для этого вам нужно явно хранить минуты во время записи. Вы можете сделать это легко с DerivedProperty :

class pm25(db.Model):
    pttime = db.DateTimeProperty()
    pttime_minute = DerivedProperty(lambda self: self.pttime.minute)

С этим изменением вы можете запросить pttime_minute, как и любое другое целое число.

...