【发布时间】:2011-10-19 10:38:45
【问题描述】:
我正在使用 Codeigniter 和 Alex Bilbie 的 MongoDB 库。 在我正在开发的 API 中,用户可以上传图片,其他用户可以对其发表评论。 我已选择将 cmets 作为子文档包含在图像中。
每条评论包含:
- 全名(作者)
- 评论
- Created_at
换句话说。用户的全名被“硬编码”到每条评论中,所以如果他们 后来决定改名我有问题。
我读到我可以使用原子更新来更新所有出现的名称(例如在 cmets 中),但是如何使用 Alex 的库来做到这一点?我可以更新所有名称错误的地方吗?
更新
这就是图像文档在 cmets 中的样子。 我认为 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"
}
感谢大家的帮助!
【问题讨论】:
标签: codeigniter mongodb