#python #list #function #pymongo
Вопрос:
Я не понимаю, почему я получаю ошибку, у меня есть младший разработчик
club_found = collection_clubs.find_one({"club_id":club_id})
if club_found:
found_idx, user_found = False, False
for idx, user in enumerate(club_found["users"]):
if user["nif"] == nif:
user_found = user
found_idx = idx
break
if not user_found:
return {"msg": " error user not found"}
date = datetime.datetime.now()
user_found["visits"].append(
str(date)
)
token_expiration = str(date datetime.timedelta(hours=8))
token_data = {"token_expiration": token_expiration, "token": str(uuid.uuid4())[
:5]}
user_found["token_data"] = token_data
response_data = {
"user_id": user_found["user_id"], "token_data": token_data}
#club_found["users"][found_idx] = user_found
Предполагается, что я правильно обращаюсь к словарям, но я новичок в программировании и уверен, что совершаю легкую ошибку.
Добавьте посещение пользователя в mongodb
try:
# error
collection_clubs.find_one_and_update({"club_id":club_id},{"$set":{club_found["users"]["visits"]:user_found["visits"]}})```
Комментарии:
1. Пожалуйста, сообщите нам, на какой линии вы получаете сообщение об ошибке. Ошибка говорит вам, что вы индексируете список с переменной, которая не является целым числом или срезом. Поэтому посмотрите, где вы индексируете список, и изучите значения переменных и или тип() переменной.