我的MongoDB数据库非常大(大约1000万个条目使用1000MB的磁盘空间),但是它的文档没有基于标题的slug。
{
"_id": {
"$oid": "630f3c32c1a580642a9ff4a0"
},
"title": "This is a title",
"Post": "this is a post"
}
但我想这样
{
"_id": {
"$oid": "630f3c32c1a580642a9ff4a0"
},
"title": "This is a title",
"slug": "this-is-a-title",
"Post": "this is a post"
}
2条答案
按热度按时间kninwzqo1#
您可以在更新管道中使用
$replaceAll
和$toLower
来实现以下目的:了解它在playground example上的工作原理
kmbjn2e32#
当我在mongodb 5.1.0上尝试接受的答案时,我得到了
TypeError: <collection-name>.update is not a function
,所以我使用下面的代码完成了它。将
$name
替换为要创建slug的属性,同时,不要忘记将集合名称替换为您的名称;D级