Я использую этот PHP libarary http://mongodb.github.io/mongo-php-library/Как обновить вспомогательный документ в MongoDB PHP с использованием новой библиотеки драйвера PHP
У меня есть сообщения сбора и в одном документе я добавляю несколько комментариев, которые я могу добавить новые комментарии, как это
$collection = (new MongoDB\Client)->project->posts;
$id = '5799a81fa60afa2010001838';
$result = $collection->updateOne(
["_id" => new MongoDB\BSON\ObjectID($id)],
['$push' => [
"comments" => ['id'=>1,'name' => 'sohss','comm'=>'I like it']
]
]
);
Теперь, как можно обновить любой конкретный комментарий я пытался, как это, но не успех
$updateResult = $collection->updateOne(
['_id' => new MongoDB\BSON\ObjectID($id),'comments'],
['$set' =>
['comments'=>[0]=>
['name'=>'123']
]
]
);
Что правильный синтаксис для обновления под документом.
Структура документа выглядит следующим образом:
{
"_id" : ObjectId("5799a81fa60afa2010001838"),
"title" : "test",
"comments" : [
{
"id" : 3,
"name" : "soh",
"comm" : "I like it"
},
{
"id" : 1,
"name" : "sohss",
"comm" : "I like it"
}
]
}
Можете ли вы показать текущую структуру документа, а также структуру обновленного документа – Webdev
и как обновленный документ должен выглядеть? – Webdev
Я хочу обновить поле «comm»: «Мне нравится» в дополнительном документе, как я могу это сделать –