问题标签 [simple-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.

0 投票
2 回答
5192 浏览

meteor - 简单的模式和多种形式

我有一个看起来像这样的用户配置文件架构:

我的注册表要求用户在上面选择他们的性别。注册后,用户会看到另一个表单来填写其余数据:姓名、位置和年龄。

问题是:当用户尝试注册时,我收到错误:Name is required. 用户在注册之前不应该输入他们的名字。

仅验证实际保存在特定表单上的数据的正确方法是什么?

编辑

这是我的注册脚本:

当用户实际注册时,他们会看到一个表单来填写其他数据。表单提交会调用一个方法,该方法会尝试更新配置文件对象。

0 投票
2 回答
268 浏览

mongodb - 使用流星中的嵌入对象更新集合

我试图在我的流星集合中添加来自 JSON 响应的数据。不幸的是,我在 Stack Overflow 上发现的所有东西都不起作用。在某些情况下,我收到一个错误,例如:

如果它没有返回错误,我的集合中的对象保持为空,例如:

下面的代码导致了一个空对象,我希望这里有人可以帮助我。

我的集合由一个字段组成,该字段具有一个对象,其中包含多个对象。我希望他们像这样

如果我的 HTTP.call 没有错误,它将执行以下操作:

我的简单模式也有这个:

编辑

我试图预定义所有对象,然后更新集合

0 投票
1 回答
163 浏览

javascript - Meteor / aldeed:simple-schema - RegexProblem

我在一个项目中使用流星,其中 aldeed:simple-schema 用于验证输入。我的架构如下所示:

我已经通过传递非字符串值或在名称字段中省略强制值来测试架构是否有效。所有这些都按预期工作。

但是,正则表达式验证不起作用。它似乎接受任何字符串,例如 '123%^&'。我在这里测试了许多这些字符串,它们都不应该通过。这是我第一次使用带有简单模式的预定义正则表达式以外的任何东西,并且想知道我是否错过了一些东西。

我也尝试将正则表达式放在一个数组中,效果相同。

我正在使用 Meteor 1.2 并已更新到所有软件包的最新版本:

0 投票
1 回答
66 浏览

mongodb - 如何在集合助手中获取未登录用户的用户名?

我有一个Questions集合,我在文件“collections.js”中使用 SimpleSchema 定义了该集合,该集合位于问题 > lib 中。

这个集合有一个askedBy字段。它是一个字符串数组,用于存储提问者的用户 ID。

在另一个文件中,问题 > 服务器 > publish.js,我有:

我的目标是使提出问题的用户的名称可用,即与“askedBy”数组中的 Id 对应的用户的用户名。

我该怎么做呢?

到目前为止我尝试过的事情:

在 collections.js 中:

这失败了,因为Meteor.users似乎只能访问当前登录的用户详细信息。对于其他用户提出的所有问题,它返回一个空值。

然后我尝试将其添加到 publish.js:

以及Meteor.subscribe("allUsers");collections.js 和 questions.js(其中包含我所有的模板帮助程序和事件处理程序)。我还将收集助手更改为:

但即使这样也行不通。

我做错了什么,如何获取未登录用户的用户名?

编辑:以防万一这很重要-文件夹结构

0 投票
1 回答
49 浏览

javascript - 尝试创建关系时集合未定义

我正在尝试使用在 Meteor 中创建一个非常基本的关系aldeed:collection2

我有两个系列;BlogsPosts。每篇文章都应该属于一个博客,所以我在我的模式中添加blog了类型。BlogsPosts


这应该可以工作,但是,一旦 Meteor 重新启动,我就会收到以下错误:

ReferenceError:博客未在 collections/Posts.js 中定义

我该如何解决这个问题?如果我理解正确,则集合在单独的文件中存在问题。但是,如果我将 Blogs.js 放置得更深(Meteor 首先加载更深的文件),我会得到:

RangeError:超出最大调用堆栈大小

0 投票
1 回答
481 浏览

mongodb - 尝试在 Meteor 中使用带有 Schema 的 autoForm 更新文档时出错

错误信息:

“未捕获的错误:过滤掉不在架构中的键后,您的修饰符现在为空”

在 Meteor 中使用 autoform 和 collection2 和简单的模式。架构:

以及模板中的表单代码:

我可以使用主页上的自动表单很好地插入文档,在单个文档页面上使用此自定义表单,我在提交时收到错误。

我在提交之前设置了一个集合挂钩,但这看起来只是一个架构错误,也许Rehab我在原始架构上设置的数组Injuries搞砸了?我为此所做的搜索都是关于模式中的“类型”参数与预期的不匹配,但我在这里检查了这些,它们看起来不错。建议?

0 投票
1 回答
86 浏览

meteor - 在 autoForm 上显示限制字段

我有这个架构:

我使用 quickForm 插入到 mongoDB,代码如下:

和 autoForm 为我生成一个包含所有模式字段的表单。

但我只想限制在 autform 上向用户显示的字段,例如这些字段:

我自己填写了一些字段,例如这些字段:

如何使用快速表单?

0 投票
1 回答
164 浏览

mongodb - 将meteor.userId插入mongoDB

我想在 simpleSchema 中初始化一个字段。我想将 userId 设置为字符串字段。

这是架构:

但是通过autoform插入后,插入的文档是:

这意味着“insertedBy”字段具有“null”值!

我怎样才能解决这个问题?

0 投票
0 回答
117 浏览

meteor - 如何在流星简单模式中调用`this.unset()`

我正在使用 autoValue 通过调用doc simple schemathis.unset()中提到的有条件地使 doc 字段值可用,但字段值仍显示在 collection 中,以下代码中是否有任何问题。

0 投票
2 回答
151 浏览

meteor - Meteor - 简单模式丢失对象属性

我有MongoCollection一个aldeed:simple-schema附件,其中content属性的类型为Object

以下代码将文档写入控制台,然后将其插入,然后获取具有正确 id 的文档并将其写入控制台:

在循环操作期间,内容属性的对象内的值会丢失。

插入前:

从数据库中检索时:

我不明白为什么会这样。这是简单模式中内容属性的规范: