Я пытаюсь получить запись из хранилища данных Google App Engine, с помощью метода filter()
следующим образом:Google App Engine: фильтр()
result = Sender.all().filter("email =", email).filter("source_address =", source).filter("dest_address =", dest).filter("food_type =", food_type)
Тогда, если такая запись существует, то изменить значение одного из столбцов в этой записи. В противном случае появляется сообщение об ошибке.
if result:
for e in result:
e.time_of_delivery = toj
e.put()
self.response.write("Time of delivery successfully rescheduled !")
else:
self.response.write("No such request.")
Однако, даже если запись в хранилище данных не существует на основании условий, налагаемых filter()
методы, которые я использовал, никогда не отображается No such request.
сообщение. Вместо этого все, что я получаю, - это пустая страница.
Что именно не так с моим кодом? Почему часть кода else
никогда не выполняется, когда запись не найдена в хранилище данных, то есть когда result = None
?
Это работает отлично. Благодаря ! –
Это довольно неэффективно. Вызов .count() - это, по сути, такая же стоимость, как и запрос. – Greg
Очень неэффективно, поскольку запрос будет выполняться дважды. –