Я ищу какой-то подобный пример, но не нашел что-то хорошее.MongoDB update complex document
{
"_id" : ObjectId("571dea148234534308a290e"),
"user" : "myusername",
"duration" : "",
"test_details" : [
{
"test" : "New",
"test_id" : "0",
"comments" : "will be some text",
"text" : ""
},
{
"test" : "**to change value here**",
"test_id" : "1",
"comments" : "will be some text",
"text" : "**to change value here**"
},
{
"test" : "New",
"test_id" : "2",
"comments" : "will be some text",
"text" : ""
},
{
"test" : "New",
"test_id" : "3",
"comments" : "will be some text",
"text" : ""
"sub_test_details" : [
{
"56eed334534566ac5668ca18" : [
{
"sub_test" : "New",
"sub_test_id" : "0",
"sub_comments" : "will be some text",
"sub_text" : ""
},
{
"sub_test" : "New",
"sub_test_id" : "1",
"sub_comments" : "will be some text",
"sub_text" : ""
},
{
"sub_test" : "New",
"sub_test_id" : "2",
"sub_comments" : "will be some text",
"sub_text" : ""
}
]
},
{
"56eed3b1f37d66ac5668ca19" : [
{
"sub_test" : "New",
"sub_test_id" : "0",
"sub_comments" : "will be some text",
"sub_text" : ""
},
{
"sub_test" : "New",
"sub_test_id" : "1",
"sub_comments" : "will be some text",
"sub_text" : ""
},
{
"sub_test" : "**to change value here**",
"sub_test_id" : "2",
"sub_comments" : "will be some text",
"sub_text" : "**to change value here**"
}
]
}
]
},
{
"test" : "New",
"test_id" : "4",
"comments" : "will be some text",
"text" : ""
}
],
}
И вопросы:
Что запрос обновить текст = "завершено успешно" и тест = "Готово", где _id ": ObjectId (" 571dea148234534308a290e ") .test_id = 1.
Что такое запрос для обновления sub_text =" Sub Completed Successfully "и sub_test =" Sub Done ", где _ Идентификатор»: ObjectId. ("571dea148234534308a290e") test_details.test_id = 3.sub_test_details.56eed3b1f37d66ac5668ca19.sub_step_id = 2
В моем случае я буду получать идентификатор, test_id, exam_num (56eed3b1f37d66ac5668ca19) , sub_test_id будут параметрами, чтобы найти подходящее место для обновления. Размер элементов массива не всегда постоянный. Поэтому я использую id, чтобы точно указать, какой элемент я ищу.
Благодаря