MongoDB定义具有数组作为文档的集合

MongoDB定义具有数组作为文档的集合,mongodb,Mongodb,我是mongodb的新手,我正在尝试创建我的第一个数据库 这是我的场景:用户可以连接到FTP位置并获取/放置一些文件。每个用户可以访问多个FTP存储 以下是用户文档所需的字段: username: String password: String host: String port: Number user: String pass: String 以下是ftp文档所需的字段: username: String password: String host: String

我是
mongodb
的新手,我正在尝试创建我的第一个数据库

这是我的场景:用户可以连接到
FTP位置
并获取/放置一些文件。每个用户可以访问多个FTP存储

以下是
用户
文档所需的字段:

username: String  
password: String
host: String  
port: Number  
user: String  
pass: String
以下是
ftp
文档所需的字段:

username: String  
password: String
host: String  
port: Number  
user: String  
pass: String
我的问题来了……我能有一个包含上述两个文档的
集合吗

更准确地说,我需要知道如何获得这样的记录,以及我的数据库应该是什么样子

{
    "username": "User",  
    "password": "test",
    [
      {
        "host": "first-host",  
        "port": 21,  
        "user": "defined-user",  
        "pass": "defined-pass"
      },
      {
        "host": "second-host",  
        "port": 21,  
        "user": "defined-user",  
        "pass": "defined-pass"
      }
    ]
}

我不确定我的问题是否足够清楚,但如果我需要指定其他信息以获得一些答案,请告诉我。BSON文档基本上是JSON/JS对象(还有一些其他类型)。因此,您的mongodb文档必须是有效的json/js对象。您的问题中所需的文档形状不是有效的js对象,因此在mongodb中是不可能的。

Mongo使用json格式,因此您可以使用类似的格式:

  "username": "User",
  "password": "test",
  "storage": [
    {
      "host": "first-host",
      "port": 21,
      "user": "defined-user",
      "pass": "defined-pass"
    },
    {
      "host": "second-host",
      "port": 21,
      "user": "defined-user",
      "pass": "defined-pass"
    }
  ]
你应该这样定义shema:

username: String  
password: String
storage : Array 

请从这里开始,一直点击“下一步”,直到您真正阅读到最后并理解它:我阅读了它,查询文档非常简单,但我需要知道如何定义一个集合,该集合接受具有数组字段的文档,如我的示例所示。。“8分钟!请教我如何像你一样阅读和学习。我希望你从现在开始回答每个人的问题。这太棒了。“现在我们回到现实中。帮你自己一个忙,花一些时间学习和测试示例。我编辑了我的问题,现在文档形状是一个有效的js对象。@Valip:不,不是。再次阅读js对象是(可以)编辑的:)很好!这就是我想知道的