当前位置: 首页 > 知识库问答 >
问题:

Meteor Mongo使用ObjectID查找文档

方嘉志
2023-03-14

以前也有人问过这个问题,但没有一个答案是我能理解的。

使用Meteor,我将一个名为Scrdata的集合拉入Select/Option。这很好。在选项中,我正在插入该文档的_id。一切都很好。

<select class="selectfile">
<option>Click to Select</option>
{{#each cwCasesPending}}
<option value="{{_id}}">{{> allcase}}</option>
{{/each}}
</select>

<template name="allcase">
<div > {{last_name}}, {{first_name}}: {{facility}} - {{cwname}}</div>
</template>

我正在尝试做一件非常简单的事情,通过id找到一个文档:

Template.caselist.events({
'change .selectfile': function(event, tmpl){
var ar = Scrdata.findOne({_id: $(event.target).val()});
console.log($(event.target).find('option:selected').val());
console.log(ar);
}
});

控制台中的结果是:

ObjectID("56dab90a73176cc2deb25aaa")
undefined

我的目标是,在选择块发生更改时,在该页面上填充表单。但是,按_id查找不起作用。

我很感谢任何见解和指导。谢谢你。

共有1个答案

方宜
2023-03-14

您遇到的基本想法是使用id作为过滤器从数据库中提取文档。如果上面的代码不起作用,您可以尝试几种方法来修复它:

第一种方法是尝试:

var id = $(event.target).find('option:selected').val();
var ar = Scrdata.findOne({_id: id});

如果这显然不起作用,则$(event.target). fin('选项:选择'). val()返回一些对象。在控制台上打印此对象。查看其属性(如果上面打印的代码是您现在收到的,则至少其中一个是id)。然后再次使用:

var id = $(event.target).find('option:selected').val().(the property of the object);

当我面对类似的问题时,我使用这种方式。希望它对你有用。看到这个问题:

 类似资料:
  • 问题内容: 由于某些原因,这将 不 返回 任何 结果。但是,其中包含带有特定内容的项目。我很确定这是类型和类型转换的问题,但是我不知道该怎么做。 有什么帮助吗? 问题答案: 几个提示: 尝试在命令行从mongodb运行相同的查询,看看是否得到任何结果。 是否在您的模式中将“ campaign_id”定义为ObjectId?如果是这样,请尝试使用ObjectId类型进行搜索。 例如:

  • 本文向大家介绍在MongoDB中找到带有ObjectID的文档?,包括了在MongoDB中找到带有ObjectID的文档?的使用技巧和注意事项,需要的朋友参考一下 要在MongoDB中查找带有Objectid的文档,请使用以下语法- 为了理解上述语法,让我们用文档创建一个集合。使用文档创建集合的查询如下- 在method的帮助下显示集合中的所有文档。查询如下- 以下是输出- 情况1-这是在Mong

  • 通过使用MongoDB和Java驱动程序,我有一个用户集合,我想根据他们的ObjectId进行查询(总体情况:我从ObjectId推断出对象的创建时间戳)。 问题是,用ObjectId查询似乎不起作用:我总是没有结果。为了测试的目的,我在搜索查询中硬编码了数据库中现有用户的ObjectId,只是为了确保我能得到结果: {“_id”:ObjectId(“565ef85ee4b0a4db3c2fc96

  • 我想在这里完成的事情很简单。我正在尝试更新MongoDB集合中的单个文档。当我使用任何字段(如“name”)查找文档时,更新查询成功。以下是查询: 如果我试图用ObjectId查找文档,它永远不会工作,因为它与任何文档都不匹配。 是否有可能使此查询与对象ID一起工作? 我同意我的问题有点类似于如何使用Java mongodb驱动程序中的“_id”字段查询文档?但是,我在尝试更新文档时没有收到任何错

  • 这个问题比原来的标题(“原型和子例程的正向声明”!)简单得多让我们开始吧。我希望答案,无论多么简单,都能帮助我理解子程序/函数、原型和范围以及模块。 在Perl中,子例程几乎可以出现在任何地方,通常不需要进行前向声明(除非子例程声明了一个原型,我不知道如何在Perl中以“标准”的方式执行)。对于我通常使用Perl所做的事情,这些不同的运行的方法几乎没有区别: 我经常使用生成代码,并将其抄录/破解成

  • 问题内容: 除了以下以外,任何人都有另一种在bash中查找和复制文件的方式: 我喜欢这种方式,因为它很灵活,因为我正在构建命令(可以通过任何命令执行)并在之后执行它。 还有其他简化命令到文件列表的方法吗? 谢谢 问题答案: 我建议使用的选项: 与往常一样,请查阅手册页以获得最佳结果。