Вопрос

Я работаю над приложением Google App Engine и столкнулся с некоторыми проблемами с запросом GQL и оператором if.Это код:

q = Song.gql("WHERE title = :1", self.request.get('song_title'))
q.get()
  if q:
    r = "Excisting Results Found: <br />"
    print q
    for song in q:
      r += song.title+" by "+song.artist+"<br />"
    self.response.out.write(r)
  else: 
    ...

Когда это запускается, страница возвращает «Найдено существующих результатов:», однако я знаю, что на самом деле никаких результатов найдено не было.Есть ли способ проверить, являются ли результаты, возвращаемые запросом, пустыми?Что бы вернулся пустой результат GqlQuery смотреть нравиться?

Любая помощь будет принята с благодарностью,
Спасибо.

Это было полезно?

Решение

В этом примере q — объект запроса GQL.Хотя вы можете рассматривать его как итерацию, вызов get() вернет один результат, и вам нужно будет присвоить этот результат переменной.Вы также можете проверить, есть ли результаты, проверив, больше ли q.count(1) 0.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top