Flow Router 不适用于 ObjectID。有什么解决办法吗?

2023-12-02

我正在尝试在我的 Meteor 应用程序中构建路线。路由工作得很好,但使用路由路径从数据库获取信息却不起作用。我用这个创建我的页面特定路线:

FlowRouter.route('/level/:id'...

这条路线将我毫无问题地带到相关模板。然后我想从数据库中获取属于该页面的一些数据。在我的模板助手中,我通过以下方式获取页面的 id:

var id = FlowRouter.getParam('id');

这样就得到了ObjectID()但以字符串格式。所以我试图找到ObjectID()集合中的文档如下:

Levels.findOne({_id: id});

但是当然文档没有字符串格式的ObjectID(否则我们不会称其为“object”id)。因此,它会带来未定义的错误。我不想创建自己的_id那么我能做些什么吗?

PS:Mongo用来创建_ids 为纯文本。有些事情就像我会接受的_id._str现在但突然间,它产生了ObjectID()。我不知道为什么,有什么想法吗?


MongoDB 使用 ObjectIds 作为_id默认情况下为 s,Meteor 默认情况下显式设置 GUID 字符串。

也许您使用插入meteor shell过去使用 mongo shell/GUI 或meteor mongo提示这样做,结果是ObjectId正在创建。

如果这种情况发生在开发环境中,您可以再次生成数据。

否则,您可以尝试生成新的_ids 为您的数据使用Meteor.uuid().

如果你想使用ObjectId作为某个集合的默认值,您可以指定idGeneration其构造函数的选项为'MONGO'.

如果你有一个字符串内容ObjectId想要转换它,你可以发出

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

Flow Router 不适用于 ObjectID。有什么解决办法吗? 的相关文章

随机推荐

  • 尝试更改 WPF 中绑定的 RadioButton 时出现奇怪的行为

    我在我的中绑定了两个单选按钮Child窗口到Enum in my ViewModel它是在主窗口中构建的 绑定按预期工作 但我注意到一个非常奇怪的行为 我无法解决 我在这里提供了所有代码 以便您可以轻松地自己重构问题 以下是查看这种奇怪行为
  • 应用程序进入后台后每 n 分钟获取用户位置

    我正在努力实施中给出的建议这个帖子 不幸的是 我不清楚这些步骤 我尝试实施这些建议 但即使在启动和停止 locationServices 后 backgroundTimeRemaining 仍继续减少 我是这样开发的 void applic
  • Android 是否按升序或降序覆盖资源文件?

    Android 有各种文件夹来设置其资源 例如 values small values normal values large drawable mdpi drawable hdpi drawable xhdpiAndroid 如何从这些文
  • 循环遍历 Excel 中某个范围的每一行

    这是我确信有一个内置函数的事情之一 而且我很可能在过去被告知过 但我正在挠头去记住它 如何使用 Excel VBA 循环遍历多列范围的每一行 我一直在搜索的所有教程似乎都只提到在一维范围内工作 Dim a As Range b As Ran
  • 运行作业时的参数解释

    h host1 example com code Get WmiObject Class Win32 ComputerSystem Namespace root cimv2 ComputerName h timeout 5 jobstate
  • 在 Foreach 循环中递增变量并使用它-SSIS

    我有一个包 我正在使用 foreach 循环来循环数据库 我正在传递一个字符串 它会循环遍历所有数据库 到这里一切都很完美 我想要实现的是 对于它循环的每个数据库 它应该将变量增加 1 假设我必须循环遍历总共 5 个数据库 包级变量 myv
  • 等待 Firebase 检索数据[重复]

    这个问题在这里已经有答案了 我想构建一个返回a的方法childFirebase 中的值 我尝试做这样的事情 public String getMessage root child MessagesOnLaunch child Message
  • 通过RedBean批量插入mysql

    如何运行以下sqlRedBean INSERT INTO tbl name a b c VALUES 1 2 3 4 5 6 7 8 9 我应该使用循环还是RedBean支持批量插入 RedBeanPHP 的创建者在这里 RedBeanPH
  • 在 Adob​​e AIR for iOS 中获取唯一标识符(MAC 地址、UDID 等)

    我正在尝试在适用于 Android 和 iOS iPad 2 的 Adob e AIR 应用程序中获取用户设备网络适配器的 MAC 地址 在 Android 中它可以正常工作 但在 iOS 中却不能 这是我正在使用的代码 var vNetw
  • 从unittest.TestCase切换到tf.test.TestCase后的幻像测试

    以下代码 class BoxListOpsTest unittest TestCase Tests for common bounding box operations
  • Sparklyr:如何将列表列分解为 Spark 表中自己的列?

    我的问题与中的问题类似here 但我在实现答案时遇到问题 并且我无法在该线程中发表评论 因此 我有一个包含嵌套数据的大 CSV 文件 其中包含由空格分隔的 2 列 假设第一列是 Y 第二列是 X X 列本身也是一个逗号分隔值 21 66 2
  • OS X Yosemite 中 setenv 和 getenv 的奇怪行为

    当我设置环境变量时 launchctl setenv FOO test 我可以通过以下方式获取值 launchctl getenv FOO 这返回我 测试 但是一个简单的 echo FOO 不替换 结果为空 在同一航站楼以及新航站楼中 背景
  • 全局变量被炼金术打破了?

    看起来Adobe炼金术没有运行全局构造函数 这是一些简单的测试代码 include
  • 更改通过 JsonExtensionData 加载的数据的键名称[重复]

    这个问题在这里已经有答案了 我有一个由系统数据和用户条目混合而成的 JSON 如下所示 Properties Type A Name aaa lorem ipsum 7 1 Type B Name bbb sit amet XYZ Type
  • 根据文件扩展名验证文件

    我从 Java 队列中获取文件 它们可能具有以下格式 docx pdf doc xls xlsx txt rtf 阅读它们的扩展名后 我想验证它们是否确实是这些类型的文件 例如 我收到一个文件并检查其扩展名是否为 xls 之后 我想检查它是
  • 在打印机兼容的设备上下文中调用 Windows SelectObject 返回 NULL

    最近的 Windows 10 更新 可能也是神秘的 KB4577586 似乎已经产生了引起调用的效果选择对象使用位图句柄作为参数 在打印机兼容的设备上下文中执行时返回 NULL 相关行可以在这个中看到位图打印示例 它在早期的 Windows
  • 从字节码解析类名

    是否可以从类源代码形成的字节码中挖掘类名称 情况是这样的 我从某个地方远程获取类字节码 它来自哪里并不重要 为了使用类加载器有效地加载该类 我还需要类名 对吗 如果您只需要类名 那么您自己解析类文件的开头可能会更容易 而不是为此目的添加用于
  • R 语言:使用 ff 包计算“group by”或拆分时出现问题

    我对 R 几乎是新手 很抱歉如果我提出一些基本问题 但我找不到这个 简单 问题的解决方案 我有一个患者数据库 大数据库 2500 万行 14 列 每个 id 有几行 例如以下结构 id birth date treatment date t
  • processing.js 加载外部文件

    我想将我的processing js 代码分割成几个文件 但我不知道如何分割 我尝试做
  • Flow Router 不适用于 ObjectID。有什么解决办法吗?

    我正在尝试在我的 Meteor 应用程序中构建路线 路由工作得很好 但使用路由路径从数据库获取信息却不起作用 我用这个创建我的页面特定路线 FlowRouter route level id 这条路线将我毫无问题地带到相关模板 然后我想从数