Как мне проверить, есть ли поле в определенном документе в pymongo?

#python #python-3.x #pymongo

#python #python-3.x #pymongo

Вопрос:

Как мне проверить, есть ли поле в определенном документе в pymongo?

Мой код:

 
@bot.command()
async def a9djasdjasdamdasmdkasmdiasnda8231(ctx):
  kekw = str(ctx.author.id)
  query = {"user": kekw, "moooney": {"$exists": True}}
  cursor = db.maindb.find(query)
  for cursor in cursor:
    print(cursor)
    await ctx.send(cursor)
 

Предполагается, что оно отправляет либо true, либо false, в зависимости от того, есть ли поле в документе.
Хотя он ничего не печатает и не отправляет. Но я знаю, что значение moooney существует.

Это очень помогло бы, если бы кто-нибудь сказал мне, что я делаю не так, спасибо.

Комментарии:

1. Я заметил, что ответов пока нет. Если кто-нибудь читает это, пожалуйста, дайте мне знать, если я могу что-то сделать, чтобы прояснить вопрос.

2. ваш запрос уже заботится о том, чтобы убедиться, что поле существует, поэтому я не вижу смысла в двойной проверке. кроме того, у вас не может быть строки типа «для курсора в курсоре» — используйте другое имя для своего итератора! например, «для записи в курсоре». затем вы можете легко проверить: если «moooney» в записи, например, проверить, существует ли a в dict.