mongodb - pymongo里,dict存储在list内,如何根据key-value值删除或更新该dict?
阿神
阿神 2017-04-21 11:17:36
[MongoDB讨论组]
{
    "title": "hello world",
    "comments": [
                    {"id": 1, "text": "text 1"},
                    {"id": 2, "text": "text 2"},
                    {"id": 3, "text": "text 3"}, 
                    ...
                ],
    "author": "",
    "views": 1000,
}

假设我现在知道某个 comment 的 id=2,想删除 comments 中 id=2 的字典,也就是 {"id": 2, "text": "text 2"} 这条数据,应该怎样写呢?

如果是更新 id=2text 的内容,又该如何写呢?

阿神
阿神

闭关修行中......

全部回复(2)
PHP中文网

这个可以使用mongodb的数组定位器,详细:
http://www.co-ding.com/?p=274

怪我咯

从mongodb命令行可以这样删除(pymongo基本上格式一样了,没测试):

db.posts.update({'_id': xxxx}, {'$pull': { 'comments': {'id': 2} }})

更新的话 写起来貌似就没有这么直白了,for遍历一下吧。。
//或者是先删了再添加进去?这样顺序可能不满足要求了。。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号