Количество объектов, возвращаемых из запроса GQL

Я новичок в Python и в настоящее время работаю над своим первым приложением Google App Engine. В моей программе у меня есть модель базы данных "Входящие", которая содержит строковые пропорции, такие как to_user, from_user, title, content и т. Д. Когда пользователь входит в мое приложение, я хочу иметь возможность подсчитывать количество сообщений, отправленных ему / ее, таким образом я могу отобразить его как "Новые сообщения (х)". Я чувствую, что сейчас использую обходной путь, потому что не могу найти лучший путь.

user = users.get_current_user()
inbox = Inbox.gql('WHERE to_user = :to_user', to_user=user.nickname())
count = 0
for note in inbox:
    count = count+1

Я попытался использовать len(входящие), но это дало мне ошибку. Спасибо за ваше время.

1 ответ

В вашем конкретном случае, когда число новых сообщений, вероятно, будет небольшим, я бы не стал создавать счетчик авансом, как предлагается здесь.
Я бы пошел с более простым решением, используя функцию count():

user = users.get_current_user()
inbox = Inbox.gql('WHERE to_user = :to_user', to_user=user.nickname())
count = inbox.count()
Другие вопросы по тегам