首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MongoDB。Studio3T。猫鼬。Hyper返回空数组。多元命名最有可能不是问题

MongoDB。Studio3T。猫鼬。Hyper返回空数组。多元命名最有可能不是问题
EN

Stack Overflow用户
提问于 2022-10-19 17:11:42
回答 1查看 28关注 0票数 0

我在超级航站楼经营摩托神。我与Studio3T和MongoDB建立了联系。并在Studio3T中创建集合和文档。数据库、集合和文档出现在Studio3T和MongoDB中。在Hyper中存在数据库和集合,但文档不存在。知道为什么吗?

我咨询过堆栈溢出,在列出的资源中找不到答案(如果我遗漏了什么,很抱歉):

  1. Mongoose always returning an empty array NodeJS
  2. Model.find() returns empty in mongoose
  3. Mongoose always return empty array?
  4. What are naming conventions for MongoDB?

MongoDB:

Hyper的Mongosh:

Studio3T:

原子中的代码:

运行代码并生成Hyper:

EN

回答 1

Stack Overflow用户

发布于 2022-10-20 15:50:28

我启动了mongod,并在本地连接到MongoDB服务器。我的应用程序代码指向以下内容:

mongoose.connect("mongodb://localhost:27017/wikiDB");

以上都是本地的。但我的数据是基于云的MongoDB阿特拉斯集群。我不应该去管理摩门教。因此,我更改了我的应用程序代码:

mongoose.connect("mongodb+srv://admin-yourname:password@blahblahblah.mongodb.net/wikiDB");

在这里你的名字,密码和blahblahblah是特定的编码器。

现在,我的应用程序代码指向我的数据所在的Atlas集群。

摘要:

我的数据在基于云的Atlas集群上。

要从命令行查看阿特拉斯集群上的数据,我“与MongoDB Shell连接”,并运行MongoDB在命令行中提供的连接字符串。现在我在命令行中看到了我的数据。

要在运行代码时查看Atlas集群上的数据,我使用“连接您的应用程序”,并将MongoDB提供的连接字符串放在代码中(mongoose.connect(. ) )。现在,当我运行我的代码,我可以看到我的数据在我的浏览器或命令行,如果我console.log它。

如果您在命令行中,在一个选项卡中运行mongod,在另一个选项卡中运行mongosh,并使用db.articles.find(),那么只会出现一个空数组。这是因为数据在基于云的Atlas集群上。在这种情况下,您是在本地查看事物。

如果您的应用程序代码指向您的本地MongoDB服务器(在一个选项卡中运行mongod,在另一个选项卡中运行mongosh ),那么当您运行该代码时,只会看到一个空数组,因为数据位于基于云的Atlas集群上。在这种情况下,您是在本地查看事物。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74129365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档