问题标签 [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.
javascript - mongoose 插件抛出错误:MissingSchemaError: Schema has not been registered for model "Appointment"
我无法解决猫鼬投掷错误的问题
我包括了所有路径,根据我的另一个模式检查了它,一切似乎都很好。我错过了什么吗?
快递.JS:
APPOINTMENT.SERVER.MODEL.JS:
约会.服务器.控制器.JS:
APPOINTMENT.SERVER.ROUTES.JS:
错误似乎是说我没有创建Appointment
Schema,我在 APPOINTMENT.SERVER.MODEL.JS 中做了:
node.js - 验证 Mongoose Schema 并显示自定义错误消息的最佳实践
我已经开始学习 Node.js,而让我有点困惑的一件事是 Schema 验证。
验证数据并向用户显示自定义错误消息的最佳实践是什么?
假设我们有这个简单的模式:
我希望注册用户拥有独特的电子邮件,因此我已将其添加unique: true
到我的架构中。现在,如果我想向用户显示错误消息,说明他为什么没有注册,我会收到如下响应:
这有点混乱,我想显示发送到客户端,如下所示:
如何做到这一点?
javascript - 在另一个模型中引用/填充猫鼬模型时遇到问题
背景:允许用户发布投票的应用程序。
我在 User 模型中填充对 Polls 模型的引用时遇到了一些麻烦。我正在使用 mongoose.populate 来尝试填充民意调查。在我的路线中,填充功能无法正常工作(返回的用户为空)。这是我的模型...
users.js:
投票.js:
这是我要在...中实施人口的路线
任何帮助、建议、想法将不胜感激。谢谢。
node.js - NodeJS Mongoose 不保存数据
我的系统每小时会创建大约 30 个集合。我的服务器在一小时内收到数千个请求。我有大数据和多个集合。我使用 MongoDB-NodeJS 来保存数据。
paritemodel.js 中 pariteModel 类的 modelControl 函数 -如下代码- 我确实检查此模式是否是之前创建的。我将创建架构或使用创建的架构。
第一个集合创建和保存数据到 MongoDB。但是当创建另一个集合时它没有做。例如:
EURJPY_20160107_ 16集合已创建,但 EURJPY_20160107_ 17集合未创建。我在 modelparite.js检查了 mongoose.models,创建了 EURJPY_20160107_17,但从EURJPY_20160107_17 创建的实例未保存到数据库。
我的服务器文件是这样的:
app.js文件是我的引导文件:
这是我在 app.js 中调用的 mongo.js 。此文件用于将数据保存到 mongodb:
这是我在 mongo.js 中调用的模型modelparite.js文件。此文件用于使用 Mongoose 创建模式:
javascript - Mongo/MongooseJS 对象模型无法正确保存
我的架构设置为它的字段之一:
我在几个例子中注意到了这一点;如果记录中已经有一个对象plan
,那么当我做这样的事情时:
当我这样做时,记录不会更新。这只发生在doc.plans
对象中已经有东西的情况下;我可以设置一次,然后不再更改。
我在这里做错了什么,我该如何纠正?
node.js - Mongoose 对象中的虚拟是未定义的?
我最近一直在学习 MongoDB 和 Mongoose,以努力学习 MEAN 堆栈。使用本课程:https ://www.edx.org/course/introduction-mongodb-using-mean-stack-mongodbx-m101x我正在尝试为我的产品架构创建一个虚拟的,以更加用户友好的方式显示价格方法。但是,当打印出这个虚拟时displayPrice
,它会显示为未定义,除非通过访问,否则toObject
USDtoJSON
符号会显示为问号。对于任何愚蠢和明显的疏忽,我深表歉意,我是这个数据库的新手,找不到很多简单解释事情的教程。
这是代码:
输出:
node.js - 每个用户的单独猫鼬模式
我是nodejs的新手。我有一个带有猫鼬和用户登录的应用程序。mongoDB 中的一些集合是针对所有用户的,而有些集合是针对个人的,例如客户集合是个人的,因此所有用户都有自己的客户集合。当用户登录并获得他的 jwt-token 时,各个 mongoose 模型将被实例化:
在文件夹 /models 中有一个 index.js:
文件 /models/customermodel.js:
当客户从两个不同的浏览器登录并返回错误时会出现问题:123customer
编译后无法覆盖模型。我通过改变解决了这个问题:
到:
现在我的问题是整个设置是否过于复杂,是否有更简洁的方法来处理以动态方式创建模型?
mongodb - 猫鼬 Pre 中的 FindOne
问题
我的目标是在我的收藏子集中拥有一个独特的字段。特别是产品艺术中的序列号应该是唯一的。因此,如果艺术不同,则可能有两个相似的序列号,但如果艺术相同,则只有一个。
检查我是否想使用mongoose pre middleware
(如果没有更好的解决方案schema level
)。
种植体.schema.coffee
种植体.模型.咖啡
问题是那ImplantModel
似乎是{}
在那个时候。我也尝试过this.constructor.findOne
这里提到的如何从 Node.js / Express 应用程序中的 Mongoose 预挂钩中查询?这给了我findOne is not a function
我可以在调用.save
方法之前执行查询,但我想钩子会是更好的地方。
node.js - 在 Mongoose 和 Joi 之间只维护一个模式的最佳方法
我正在使用 Hapi 开发 Web 服务,Mongoose 作为 ODM,Joi 作为验证器。我真的很喜欢 Joi 的验证以及它与 HAPI 连接的方式(我需要 Joi 的描述函数来大摇大摆地显示一些描述),但我不想维护两种模式,一种用于 Joi,一种用于猫鼬;我想使用 Joi 定义我的模式,然后只能导出 Mongoose 所需的基本模式。例如:
mySchema.js
myValidator.js
myModel.js
myHapiRoute.js
我想避免维护mySchema.js文件完全从 Joi 的模式生成它的麻烦。
关于如何做到这一点或任何不同的方法的任何建议?
node.js - 具有一对多关系的 Mongoose 文档引用
我正在为一个新项目设计数据库结构,而且我对 MongoDB 很陌生,显然是 Mongoose。
我已经阅读了 Mongooses人口文档,其中它具有一对多的关系,一个Person
文档对多个Story
文档,但让我感到困惑的部分是,而不是Story
引用Person
它所属的文档的文档,Person
架构有它设置所以它有一系列Story
它“拥有”的文件。
我正在设置与此非常相似的东西。Story
但我一直认为在创建新文档以拥有Person
文档 ID时会更容易。但也许那只是因为我更熟悉使用连接的 MySQL 关系。
如果这是最好的方法(我确信它是,因为它在文档中),当创建新文档时,更新它所属Story
的相关文档中的故事数组的最佳方法是什么?People
我查看但找不到任何更新现有文档以添加对其他文档的引用(或为此删除它们)的示例
我确信这是一个我刚刚忽略的简单解决方案,但任何帮助都会很棒。谢谢!