首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在mongoose中搜索和替换?

如何在mongoose中搜索和替换?
EN

Stack Overflow用户
提问于 2014-01-15 21:03:39
回答 1查看 5.1K关注 0票数 2

我的目标是:我希望在某个路径中更新集合中的多个文档,条件是路径与正则表达式匹配,然后搜索并替换路径中的某个值,最后将所有这些文档持久地保存在db中。

示例:

代码语言:javascript
复制
myCollection : [
{ doc1 : { summary : 'Summary 1 : one', value : 1 },
{ doc2 : { summary : 'Summaryyuist 2 : two', value : 1 },
{ doc3 : { summary : 'hello 3 : three', value : 3 },
];

现在我想用path :'summary‘中的'hello’替换所有的'Summary‘。

所以查询后的结果应该是:

代码语言:javascript
复制
myCollection : [
{ doc1 : { summary : 'hello 1 : one', value : 1 },
{ doc2 : { summary : 'helloyuist 2 : two', value : 1 },
{ doc3 : { summary : 'hello 3 : three', value : 3 },
];

我只是在查看上面要使用的查询。

从这里开始http://mongoosejs.com/docs/api.html#query_Query-regex

我没有找到如何实现的信息。特别是'Number‘参数在regex方法中的作用。

也是从这里开始:

http://mongoosejs.com/docs/api.html#query_Query-regex我也没有找到monsoose regex的“show code”链接。有人能至少回复一个mongoose正则表达式代码的链接。

我只知道如何查找模型,而不知道如何使用与文档的某些路径中的正则表达式匹配的值进行更新。

如何实现我的目标?

EN

回答 1

Stack Overflow用户

发布于 2014-01-15 21:10:21

我希望你可以使用mongoose Model.Update选项。

代码语言:javascript
复制
Model.update = function (query, doc, options, callback) { ... }

示例:

代码语言:javascript
复制
MyModel.update({ age: { $gt: 18 } }, { oldEnough: true }, fn);
MyModel.update({ name: 'Tobi' }, { ferret: true }, { multi: true }, function(err,numberAffected,   raw) {
 if (err) return handleError(err);
 console.log('The number of updated documents was %d', numberAffected);
 console.log('The raw response from Mongo was ', raw);
 });

http://mongoosejs.com/docs/api.html#model_Model.update

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21138167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档