使用 mongoose 创建动态模式

2023-12-28

我对 Node js 和 Mongoose 模块非常陌生。我正在尝试创建一个架构,其中有一些必填字段,而其他一些字段可以是动态的。

我用过strict to false。我的代码如下所示:

var mongoose = require('mongoose')
var db = mongoose.connect('mongodb://localhost/ets',function(err)
{
    if(err) throw err
})

var Schema = mongoose.Schema
var Tasks = new Schema({vmProfile:String}, { strict: false });
mongoose.model('Task',Tasks)

var Task = mongoose.model('Task')
var task = new Task()
task.vmProfile = "required value"
task.otherKey = "something"
task.save(function(err)
{
    if(err) throw err;
})

当我运行这个时,我只得到vmProfile已保存,未保存otherKey,数据库看起来像这样:

{ "vmProfile" : "required value", "_id" : ObjectId("53364a5a5cd71a76122f0a8a"), "__v" : 0 }

我在哪里犯了错误。


来自猫鼬docs http://mongoosejs.com/docs/guide.html#strict:

注意:实例上设置的任何键/值在您的实例中不存在 无论模式选项如何,模式始终被忽略。

您可以在创建模型实例时设置该值:

var task = new Task({'otherKey', 'some value'});

您还可以将临时值放在mixed http://mongoosejs.com/docs/api.html#schema-mixed-js子文档类型也是如此。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 mongoose 创建动态模式 的相关文章

  • Nodejs Express中间件函数返回值

    我正在使用 NodeJS 和 Express 我有以下路线 中间件功能是Mobile 如果我不使用 return next 在 isMobile 函数中 应用程序会卡住 因为 NodeJS 不会移至下一个函数 但我需要 isMobile 函
  • Node.js 和 Passport 对象没有 validPassword 方法

    我正在使用 Node js Express Passport 创建一个简单的身份验证 本地 到目前为止我所达到的效果是 当输入错误的用户名或密码时 用户将被重定向到错误页面 但是当用户输入正确的用户名和密码时 我收到此错误 node mod
  • 使用 KeystoneJs 的 Mongoose 二级种群 [重复]

    这个问题在这里已经有答案了 我需要用 Mongoose Keystone 填充两层 但遇到了障碍 我有 3 个模型 地区 国家和城市 地区包含国家 国家包含城市 我的模型 型号区域 var Region new keystone List
  • 如何使用remark将markdown解析为json

    The 备注站点 https remark js org 有一个 AST 浏览器的链接 用于输出备注 https astexplorer net gist 0a92bbf654aca4fdfb3f139254cf0bad ffe102014
  • Mongod 错误(用自制程序安装)

    我已经安装了 mongodb brew install mongodb 已创建文件夹 mkdir p data db 处理权限 sudo chown R id un data db Run mongod 错误日志 2018 01 06T14
  • Spring Data MongoDB:聚合框架 - 使用嵌套属性进行排序会抛出无效引用

    I found Spring论坛上的这篇文章 http forum spring io forum spring projects data nosql 130522 spring data mongodb aggregation fram
  • 如何配置 Google 计算引擎以对 Nodejs 服务器使用 HTTPS?

    我想使用 https SSL 在 google 计算引擎中运行 nodejs 和 socket io 服务器 我安装了自签名证书https cloud google com compute docs load balancing http
  • 用于从字段中查找最大值的 MongoTemplate 方法或查询

    我正在使用 MongoTemplate 进行数据库操作 现在我想从所选结果中获取最大字段值 有人可以指导我如何编写查询 以便当我将查询传递给 find 方法时 它将返回我所需的文档最大字段 提前致谢 问候 可以在spring data mo
  • 通过 node-http-proxy 保留基于 cookie 的会话

    我有一个简单的基于 Express 的 Node js Web 服务器 用于开发 JavaScript 应用程序 我将服务器设置为使用 node http proxy 来代理应用程序向在不同域和端口上运行的 Jetty 服务器发出的 API
  • 查询为空 Node Js Sequelize

    我正在尝试更新 Node js 应用程序中的数据 我和邮递员测试过 我的开发步骤是 从数据库 MySQL 获取ID为10的数据进行更新 gt gt 未处理的拒绝SequelizeDatabaseError 查询为空 我认识到 我使用了错误的
  • 从 Azure 应用服务连接到 MongoDB Atlas 集群

    我在 Azure 上有一个 Web 应用程序 它连接到 Atlas cloud mongodb com 上托管的 MongoDB 集群 我想使用 Atlas 这样我就不必关心 MongoDb 配置 问题是我的集群连接超时 我必须在我的 mo
  • 表情符号未正确保存在 mongodb 中

    我正在将 Twitter 和 Instagram 上的表情符号保存到我的 mongodb 数据库中 但是当我显示从数据库中提取的数据时 表情符号看起来像这样破损了 在将数据保存到 mongodb 期间我需要做一些不同的事情吗 我是 mong
  • Node + Express 会话过期?

    我有一个 Express 应用程序 并且有一个登录表单 我需要持续 1 个月的会话 我是否将 maxAge 设置为一个月 以毫秒为单位 我让两台计算机保持打开状态并登录了 24 小时 当我回来时 两台计算机都已注销 我该如何解决这个问题 实
  • 在浏览器中语音聊天? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我们正在寻求建立一个小组 voice 使用服务器上的node js 在浏览器中聊天 这可能吗 如果您希望您的解决方案是基于服务器端和客
  • 将音频与视频流合并 Node.js

    我正在创建 YouTube 视频下载器并且正在使用ytdl core库 它无法下载带有音频的高质量视频 因为 youtube 将其放在另一个文件中 但我需要将其全部下载到一个文件中 我已经这样做了 app get download asyn
  • 如何以非阻塞方式在 Node.js 中搜索数组?

    我有一个数组是 4ff023908ed2842c1265d9e4 4ff0d75c8ed2842c1266099b 我必须找出以下内容是否在该数组内 4ff0d75c8ed2842c1266099b 这是我写的 Array prototyp
  • Node.js 可读流_read用法

    我了解如何在 Node 的 new 中使用可写流Streams2库 但我不明白如何使用可读流 举个例子 一个流包装器围绕dgram module var dgram require dgram var thumbs twiddle func
  • 尝试将 Firebase 版本回滚到 2.X

    我最近更新到了新的 Firebase 3 但不幸的是 据我所知 它目前不支持 Geofire 查询 这对我的应用程序很重要 我已经将应用程序中的其他所有内容都转为使用 Firebase 2 但是当我尝试时要将我的应用程序部署到 fireba
  • 如何修复超出最大调用堆栈大小

    有一个 MERN Firebase 应用程序并收到此错误和一堆 atdeepExtend deepCopy ts 71 RangeError Maximum call stack size exceeded getApps as apps
  • 如何调试 Gulp 任务?

    如何调试我的中定义的 gulp 任务gulpfile js使用诸如 Google Chrome 调试器之类的调试器逐行单步执行任务的代码 对于 Node js 6 3 版本 您可以使用 inspect flag https nodejs o

随机推荐

  • 为什么无法使用反射获取局部变量名称?

    如果我有这样的代码 public class Program public static void Main string bar int foo 24 我可以获得声明的局部变量Main using var flag BindingFlag
  • 访问 Hello-World Google Cloud Endpoint 服务的 URL 是什么?

    我通过使用在 Eclipse 中生成了一个 Google Endpoint AppEngine 项目Generate AppEngine BackEnd如中所述这篇博文 http devthots blogspot no 2012 07 b
  • 如何在 PHP 中不使用 foreach 来内爆带有键和值的数组

    没有 foreach 我怎样才能像这样转动一个数组 array item1 gt object1 item2 gt object2 item n gt object n 像这样的字符串 item1 object1 item2 object2
  • JAX-RS:Tomcat 运行正常但未找到 root (404)

    我刚刚为我的 RESTful Web API 启动了 JAX RS Jersey Tomcat运行正常但找不到root 错误404 错误控制台如下 SEVERE Servlet Jersey REST Service in web appl
  • AWS EC2 中的 MySQL - 它如何扩展?

    当您不再只使用一个数据库实例时 使用 EC2 时的最佳实践是什么 如果第一个实例是主实例并且您正在启动从属实例 那么它们需要扫描事务日志并在从属实例可用之前使自己保持最新状态 对吗 如果主人跑了一段时间很忙 这可能会花很长时间 对吗 在 E
  • 为什么 CollapsingToolbarLayout 中按钮的点击区域太小?

    我里面有三个按钮CollapsingToolbarLayout 展开时 其想法是修改正在显示的图像库上的过滤器 或弹出一个编辑对话框 我得到的结果不一致 按钮只是间歇性地响应点击 最终 我意识到问题在于可点击区域比视图的客户端矩形小得多 水
  • 如何更改 StringToDate 中的默认格式? Spring WebFlow

    Spring WebFlow 中的默认日期格式是 yyyy MM dd 如何更改为其他格式 例如 dd mm yyyy 抱歉发晚了 但这就是你必须做的 Spring Webflow 进行自定义数据绑定 它与 Spring MVC 的做法类似
  • 关于 Cocoa 中线程和运行循环的澄清

    我正在尝试学习线程 但我完全感到困惑 我确信所有答案都在苹果文档中 但我发现它真的很难分解和消化 也许有人可以帮我解决一两件事 1 在主线程上执行Selector 上面的代码是否只是在主运行循环中注册了一个事件 或者它是否以某种方式成为一个
  • Java 中的单例模式和静态类有什么区别? [复制]

    这个问题在这里已经有答案了 单例与仅填充静态字段的类有何不同 几乎每次我编写静态类时 我最终都希望将其实现为非静态类 考虑 可以扩展非静态类 多态可以节省大量重复 非静态类可以实现接口 当您想要将实现与 API 分开时 它会派上用场 由于这
  • 使用 jQuery 选择器和 setSelectionRange 不是一个函数

    我在下面组装了一个基本的小提琴 由于某种原因 我的选择器可以检索文本区域框来设置值 但选择器无法使用 setSelectionRange 函数 在控制台上 您会发现 setSelectionRange is not a function 的
  • 预测模式中的下一个数字

    我正在尝试使用 TensorFlow 编写一个简单的程序来预测序列中的下一个数字 我没有 TensorFlow 经验 因此我没有从头开始 而是从本指南开始 http monik in a noobs guide to implementin
  • commons-collections 和 commons-beanutils 中的重复类

    Apache 的两个 Maven 工件中有四个重复的类 commons beanutils commons beanutils 1 8 3 and commons collections commons collections 3 2 1
  • 如何检查文件夹是否存在?

    我正在研究 Java 7 IO 的新功能 实际上我正在尝试检索文件夹中的所有 XML 文件 但是 当文件夹不存在时 这会引发异常 如何使用新 IO 检查该文件夹是否存在 public UpdateHandler String release
  • Google pydrive 将文件上传到特定文件夹

    我正在尝试将文件上传到我的 Google 驱动器 下面的代码有效 如何指定上传到哪个文件夹 即驱动器 与我共享 csvFolder from pydrive auth import GoogleAuth from pydrive drive
  • 从 UWP 商店应用程序向多个收件人发送电子邮件

    我有一个简单的目标 即打开一封电子邮件 在 Outlook 2016 中 其中为 Windows 10 UWP 应用程序中的多个收件人配置了 收件人 字段 我尝试了3种方法 1 推荐的方式 如UWP示例中的demod 使用EmailMess
  • 如何在 React Native 博览会中使用可教学机器模型

    我正在使用可教学机器导出模型 const modelJson require assets models model json const modelWeights require assets models weights bin use
  • ReactJs componentDidMount 执行两次

    我正在研究 ReactJs 并遇到一些问题 我的问题是我有一个使用最新 ReactJs v 18 0 0 的简单应用程序 并且 componentDidMount 执行两次 为什么 index js import createRoot fr
  • 如何暂时放弃root权限?

    我正在开发一个以 root 身份运行的守护进程 但需要与用户调用 API 我检查了 API 代码 它使用getuid 来获取用户 如果 root 用户通过以下方式放弃权限setuid 无法恢复到root 如果调用 seteuid API 仍
  • Laravel - Jenssegers MongoDB 嵌套数组更新不起作用

    有人可以指出我的代码有什么问题吗 我正在尝试通过 Laravel Jenssegers 更新 MongoDB 中的嵌套数组 这是我的代码 update status Journal where id 5cd10b325586e9122761
  • 使用 mongoose 创建动态模式

    我对 Node js 和 Mongoose 模块非常陌生 我正在尝试创建一个架构 其中有一些必填字段 而其他一些字段可以是动态的 我用过strict to false 我的代码如下所示 var mongoose require mongoo