问题标签 [mongoose-schema]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 如何在 mongoose 模式字段声明中将 mongo 文档设为只读?
createdDate
我希望仅在插入文档时才能设置实体字段。更改字段的所有其他尝试都应静默通过,而不更改字段值。
node.js - 将哈希图保存到猫鼬?
我有这样的架构
将项目作为一个大列表我决定将其设为哈希映射以更快地访问它。
当我遇到每个新项目时,我正在遍历一堆我正在解析和存储的 html。
即使我没有错误。我的数据没有保存。这是因为我的新商品没有 _id 吗?我用 _id 试了一下,还是没有保存。
mongodb - Mongoose Mongo 2dsphere geoWithin
在阅读了许多与我非常接近的问题并阅读了 MongoDB 文档和 Mongoose 文档之后,我仍然无法回答我的问题。
在节点 4.4.0 上使用 express 4.13.4、mongoose 4.4.10、mongodb 2.1.14
我的猫鼬位置架构:
我的CatalogModel
架构(我写给 Mongo 的内容):
我创建了一个具体的示例并写入 MongoDB(这很好......因为我可以在 Mongo 中查询它)
在 Mongo 中,我向集合询问了索引:
这就是它所说的(不完全确定这意味着什么)
我可以做一个db.catalogmodels.find()
并取回我的文件。
我什至可以在 Mongo 中调用 $geoWithin:
但这是实际的问题:
Mongoose 一直告诉我[错误:无法使用 $geoWithin]
我还将 .find().where().within() 调用替换为:
Mongoose 不喜欢 $geoWithin 调用是否有原因?最新的 API 说这应该可以。
javascript - 无法通过 Express 路由从 Mongodb 中删除文档
我想通过 id 删除一个 Mongodb 文档,将其传递给 Express 路由。
在控制台中,我收到一条消息,说它已被删除。
但事实并非如此。
我的 Angularjs 工厂:
我的 route.js
该app.get
功能在这里运行良好。
有什么问题app.delete
?
这是我的数据库架构models/mydb
mongoose - 如果我已经完成了架构,如何创建添加到我的数据库中的用户?
我在 ./models 中有这个文件
我想知道如果我有一个包含注册表单的页面,我将如何继续创建用户以添加到我的数据库中。
我知道我必须做的与 server.js 中的一个函数有关,可能还有其他一些事情,但我不知道也没有找到任何帮助。
任何事情都值得赞赏!
编辑:我已经看过这个,但无法弄清楚他在什么/哪里添加了从注册表单到数据库的内容,或者使用 mongoose 与 mongo 时的区别是什么。 http://code.runnable.com/U108R8ihwn4m4TM5/user-creation-signup-and-login-with-express-4-and-mongodb-for-node-js
node.js - 使用 FindByIdAndUpdate 更新文档
我有一个问题,MongoosefindByIdAndUpdate
没有在回调中返回正确的模型。
我想TIMELINE.Description
从用户文档更新属性:
mongodb - 如何处理 mongodb 集合中的“lastModified”字段?(只有当文档中的任何值发生更改时,该字段才会更新)
编辑(15/04/2016):根据在这个问题中收到的评论,我认为 mongodb 中没有直接的方法可以这样做。在那种情况下,是否可以使用 MongooseJS 做到这一点?
我正在使用 mongodb,对于一个集合,我需要一个“lastModified”字段,它应该显示最后一次实际修改文档的任何值的时间。这意味着,如果我进行了更新查询并且所有其他值都相同,则不应更新“lastModified”。
示例: 假设我在集合中有一个文档:
当我更新时
那么“lastModified”不应该改变
当我更新时
那么“lastModified”应该改变
如何做到这一点?
在我的情况下,我将多次调用更新操作,并且我不想在这种情况下每次都更改“lastModified”。相反,它应该仅在实际修改“状态”时才更改。
node.js - 将猫鼬模型包含在 node.js 文件中包含的单个 js 中吗?
我正在使用 mongo mongoose 创建节点应用程序。我有模型单独的文件,其中创建了所有数据模块,我想将所有数据模型配置为一个 js 文件,我们必须将其包含在 node.js 文件(server.js)中有 user.js
书籍.js
现在我想将这些 books.js 和 user.js 文件包含在一个 js 文件中,所以我创建了一个
模型.js
我在 server.js 文件中包含这个 model.js 文件
当我尝试运行此程序时,出现“找不到模型 books.js 和 user.js”的错误
我认为错误在model.js中所以你能纠正我吗?
node.js - 在数组之间移动子文档然后修改它时,猫鼬内存泄漏
这太古怪了。我可以通过移动一些代码来修复它……但我不知道为什么——为什么它一开始就坏了,或者为什么它修复了它。此代码的目的是将目标对象(使用Goal
模式)从goalsInactive
数组移动到goals
用户的数组。下面的代码产生了内存错误并崩溃了:
mongoose/lib/document.js
通过在路径更新时记录路径并意识到它正在创建无限路径,我意识到崩溃的原因是内存失控问题。可疑的原始路径如下所示:
我可以通过将代码更改为此来解决此问题:
(即在移动之前修改对象)。但我不知道为什么这确实有效!
我使用的是 mongoose 4.1.9,所以问题可能已经修复,但我对更新持谨慎态度,因为更新会产生类似的奇怪问题。值得注意的是,里程碑对象也有自己的猫鼬模式。
node.js - 在 mongodb 文档中添加子文档
我正在开发这个 Node.js 应用程序,我发现在处理 MongoDb 数据库中的数组和子文档时遇到了一些困难。
我需要添加这么多子文档,而以这种形式,它不能。有什么帮助吗?
这是我的模型文件:
这是我的控制器功能: