Я использую Codeigniter и библиотеку Алекса Билби MongoDB.
В моем API, который я разрабатываю, пользователи могут загружать изображения, а другие пользователи могут комментировать их.
Я решил включить комментарии как вспомогательные документы к изображениям.
Каждый комментарий содержит:
- ФИО (автора)
- Комментарий
- created_at
Так, другими словами. Полное имя пользователя «жестко закодировано» в каждом комментарии, так что если они
позже решу сменить фамилию у меня проблема.
Я прочитал, что могу использовать атомарные обновления для обновления всех вхождений имени (как в комментариях), но как я могу сделать это, используя библиотеку Алекса? Могу ли я обновить все места, где имя неверно?
UPDATE
Так выглядит изображение документа с комментариями.
Я думаю, что довольно странно, что MongoDB поощряет использование поддокументов, но не включает в себя способ обновления нескольких элементов в массиве.
{
"_id": ObjectId("4e9ead773dc793dc01020000"),
"description": "An image",
"category": "accident",
"comments": [
{
"id": ObjectId("4e96bd063dc7937202000000"),
"fullname": "James Bond",
"comment": "This is a comment.",
"created_at": "2011-10-19 13:02:40"
}
],
"created_at": "2011-10-19 12:59:03"
}
Благодарю за помощь!