验证对象必须至少有一个operator/meteor mongo

2023-11-29

我编写了一个将用户地址保存到集合中的方法。但是,我不断收到错误:

When the modifier option is true, validation object must have at least one operator.

这是我的架构:

var Schemas = {};

Schemas.UserAddress = new SimpleSchema({

streetAddress: {
    type: String,
    max: 100,
    optional: false
},
city: {
    type: String,
    max: 50,
    optional: false
},
state: {    
    type: String,
    regEx: /^[a-zA-Z-]{2,25}$/,
    optional: false
},
zipCode: {
type: String,
regEx: /^[0-9]{5}$/,
optional: false
}
  });

Schemas.User = new SimpleSchema({
emails: {
    type: [Object],
    optional: false
},
"emails.$.address": {
    type: String,
    regEx: SimpleSchema.RegEx.Email
},
"emails.$.verified": {
    type: Boolean
},
createdAt: {
    type: Date
},
profile: {
    type: Schemas.UserProfile,
    optional: false
},
   address: {
    type: Schemas.UserAddress,
    optional: false
},
services: {
    type: Object,
    optional: true,
    blackbox: true
}
});

Meteor.users.attachSchema(Schemas.User);

这是我的 addAddress 事件:

Template.editAddress.events({

  'click .addAddress': function(e, tmpl) {
e.preventDefault();
var currentUserId = this._id; 
var addressDetails = {
  address: {
    streetAddress: $('#streetAddress').val(),
    city: $('#city').val(),
    state: $('#state').val(),
    zipCode: $('#zipCode').val()
  },
};
console.log(addressDetails);
Meteor.call('addNewAddress', addressDetails, currentUserId, function(error) {
  if (error) {
    alert(error.reason);
  } else {
    console.log('success!');
    Router.go('Admin');
  }
});
},
});

这是我的 addAddress 方法:

Meteor.methods({
'addNewAddress': function(addressDetails, currUserId) {

    var currentUserId = currUserId;

    Meteor.users.update(currentUserId, {$addToSet:
        {'address.streetAddress': addressDetails.streetAddress,
         'address.city': addressDetails.city,
         'address.state': addressDetails.state,
         'address.zipCode': addressDetails.zipCode
        }
    });
}
});

注意 - 当我执行 console.log(addressDetails) 时,它会很好地打印出地址详细信息。

有人可以帮忙吗?先感谢您!!


是的,这个错误有点把你引向错误的方向。无论如何,您正在使用$addToSet在一个物体上。做这个:

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

验证对象必须至少有一个operator/meteor mongo 的相关文章

随机推荐

  • 修改查询字符串而不重新加载页面

    我正在创建一个照片库 并且希望能够在浏览照片时更改查询字符串和标题 我正在寻找的行为经常出现在连续 无限页面的某些实现中 当您向下滚动查询字符串时 会不断增加页码 http x com page 4 等等 理论上这应该很简单 但我想要一些在
  • 将图像字节数据流解码为 JPEG

    我正在努力成功地将 JPEG 图像从字节解码回 JPEG 我从 MJPG 字节流的编码帧开始 我想对其进行解码以便使用 OpenCV 进行操作 我是 Python numpy opencv 等方面的新手 我现在将帧 JPG 数据放在文本文件
  • Vanilla JS Div 碰撞检测

    我的以下实现可以在jsfiddle net 我有四个div 我的目标是使它们可以在页面上拖动 但不允许它们彼此重叠 每个都可以使用 mousemove 侦听器在页面上拖动 container addEventListener mousemo
  • 在哪里可以找到 PyQt5 方法签名?

    我想编写一个带有图形用户界面的小型应用程序 为此我安装了 PyQt5 在教程中 我发现 QMessageBox information 调用已完成 我想更改调用方式 而不是 QMessageBox information self Empt
  • IE 和 Webkit 移动设备中对最大图像像素大小是否有任意限制?

    最近的一个项目使用了非常像素大 5e3px2 但仍然是字节小 100kb GIF 的图像 IE8 和 iOS Safari 都拒绝渲染 两者似乎都知道图像大小 但只是不渲染它们 一个实用的解决方案是对图像进行切片 但是这些浏览器对最大图像像
  • 除了架构方面的考虑之外,为什么要在 Swift 中标记一些最终的东西呢?

    除了明显的原因 例如如果按照设计 我不希望某些方法 属性或任何内容在继承树中被覆盖 是否还有其他原因来标记事物final在斯威夫特 例如 是否有性能方面的考虑 我记得在某处读到过一些答案 其中提出了一些建议 来自 Apple 的 Swift
  • THREE.js - 广告牌顶点着色器

    我需要将 THREE Mesh 的实例定向为始终面向相机 我知道我可以只使用 THREE Mesh lookAt 方法 但我正在尝试更多地处理我的 GLSL 部分 并希望能够在顶点着色器中执行此操作 我已读完NeHe 的广告牌教程 这对我来
  • CSS 引用每个奇怪的嵌套子元素?

    我正在尝试制作一个评论系统 其中嵌套评论具有斑马背景颜色 蓝色背景回复白色背景回复蓝色背景 有没有办法引用这些嵌套的子项 而不是将它们称为 comment comment comment comment comment comment co
  • 使用 Bintray 在 jCenter 上发布 Android Studio 库时遇到问题

    我按照本教程在 Jcenter 上发布示例 Android Studio 库 http crushingcode co publish your android library via jcenter 看起来很清楚 我已通过此链接使用此库创
  • Databricks - 创建永久用户定义函数 (UDF)

    我能够创建一个 UDF 函数并使用 Spark UDF 方法注册到 Spark 但是 这仅限于每个会话 如何在Cluster启动时自动注册python UDF函数 这些功能应该可供所有用户使用 示例用例是将时间从 UTC 转换为本地时区 这
  • 字符串未被识别为有效的日期时间“格式 dd/MM/yyyy”

    我正在尝试将字符串格式化值转换为具有格式的日期类型dd MM yyyy this Text 22 11 2009 DateTime date DateTime Parse this Text 问题是什么 它有第二个覆盖 要求IFormatP
  • C 语言中的简单字符解释

    这是我的代码 include
  • 如何在 cytoscapejs 中操作后保存图形的整个状态

    我在 Angular 中使用 cytoscapejs 我希望用户在完成一些操作 例如平移 缩放 移动节点和边缘 后保存图形的状态 我尝试将整个对象保存在临时变量中 并尝试通过单击按钮使用保存的对象重新加载图形来渲染图形 const cy c
  • 从通话中转接 Twilio 呼叫

    我没有从 Twilio 文档中找到关于此问题的明确答案 我正在尝试构建一个电话系统 该系统可以在通话时且仅通过电话将对方置于保持状态 示例 有两名特工在现场与我一起工作 我通过手机 远离计算机 接到电话 发现另一位客服人员需要与我通话的人通
  • android旋转屏幕导致文本颜色更改为默认值

    在我创建井字棋游戏的 Android 应用程序中 我在下面有这段代码 如果是玩家一步 则将其选择设置为X具有特定的颜色 否则它必须是玩家 2 因此将文本设置为O供他们选择不同的颜色 Override public void onClick
  • 如何在 C# 中对两个列表进行笛卡尔连接?

    如何对两个包含整数的列表进行笛卡尔连接 这可以用 linq 来完成吗 假设您的意思是 交叉连接 或 笛卡尔连接 var query from x in firstList from y in secondList select new x
  • 在 XAMPP for Linux 中使用 mailtodisk / mailoutput

    与 Windows 不同 我在 Linux 中使用 mailtodisk PHP 选项时遇到问题 看起来它根本不存在 在 php ini 的邮件部分中 没有引用它 mail function For Win32 only http php
  • 是否可以通过 Java API for GLES 在 Android 上使用像素图?

    我正在尝试在 Android 上使用 OpenGL ES 实现离屏渲染 我的最终目标是提高我在普通 java 和 Bitmap int API 中所做的纹理映射的性能 我尝试了 pbuffer 方法 类似于来自相关论坛主题 它显示出相当低的
  • 在SSIS中执行Sql任务时出错

    I was trying to insert data from variable into database via SSIS I made use of Execute XML Task below is the screenshot
  • 验证对象必须至少有一个operator/meteor mongo

    我编写了一个将用户地址保存到集合中的方法 但是 我不断收到错误 When the modifier option is true validation object must have at least one operator 这是我的架