Я спасаю один из полей в хранилище данных с использованием:GAE Race состояние .get() и .Put()
self.user.expiration_date = datetime.datetime.utcnow() + datetime.timedelta(days=31)
self.user.put()
Я использую webapp2. После сохранения даты истечения срока действия пользователя я перенаправляю пользователя к методу, где записывается следующий код.
user = User.all().filter('email =', self.session.get('email'))
digest = self.session.get('passwd').encode('utf-8', 'ignore')
user = user.filter('passwd =', digest).get()
self.user = user
Однако после этого, когда я проверяю значение expiration_date, его Null или предыдущее значение.
Что мне делать, чтобы получить правильное значение?
Если у меня есть идентификатор, тогда мне не нужно использовать сравнение по электронной почте, верно? Идентификатор должен быть уникальным в модели. – iamkhush
Правильно, если у вас есть идентификатор, вы можете создать ключ и просто использовать get. Или вы можете использовать get_by_id (я забыл синтаксис db), который делает то же самое под обложками. Дело в том, что если вы получите пользователя по ключу/id, а не по запросу, вы получите согласованный объект. – Jay