Не уверен, как вы создали документ, используя:
db.time_data.insert({"Last_updated":"Jan 6 22:19:48 IST"},{"Next_scheduled":"Jan 6 23:19:48 IST"})
, потому что эта операция приведет к тому, что документ будет создан следующим образом:
/* 1 */
{
"_id" : ObjectId("5e1374692a0e7dc716ae47fa"),
"Last_updated" : "Jan 6 22:19:48 IST"
}
Это нормально, как второй объект {"Next_scheduled":"Jan 6 23:19:48 IST"}
игнорируется, ваш запрос должен быть таким же, как показано ниже, чтобы создать один документ с двумя полями:
db.time_data.insert({"Last_updated":"Jan 6 22:19:48 IST","Next_scheduled":"Jan 6 23:19:48 IST"})
Обновление:
Поскольку ваша коллекция у вас есть только один документ, для его обновления вам не нужен фильтр, вы просто делаете:
db.time_data.update({}, {"Last_updated":"Jan 7 22:19:48 IST","Next_scheduled":"Jan 7 23:19:48 IST"})
(или)
db.time_data.updateOne({}, {$set :{"Last_updated":"Jan 8 22:19:48 IST","Next_scheduled":"Jan 8 23:19:48 IST"}})
(или)
db.time_data.findOneAndUpdate({}, {$set :{"Last_updated":"Jan 9 22:19:48 IST","Next_scheduled":"Jan 9 23:19:48 IST"}})
Таким образом, вы можете использовать любой из вышеперечисленных или даже .updateMany()
в зависимости от необходимости, проверьте их ответы, некоторые возвращают результат записи или некоторые возвращают обновленный документ (если вы установили опцию для возврата нового документа). Эти запросы относятся к оболочке mongoDB, найдите ссылку update в pymon go Ref , чтобы преобразовать их для работы с python (большинство базовых c изменений будут синтаксическими например, updateOne
до update_one
, updateMany
до update_many
, также проверяйте параметры, передаваемые с ними, поскольку они могут варьироваться от оболочки mongoDB до драйверов, таких как pymongo
/ mongoDB driver
/ mongoose
).
MongoDB Ref: update , .findOneAndUpdate ()
pymon go Ref: pymon go -do c