在mongodb中创建数组

在mongodb中创建数组,mongodb,mongoid3,Mongodb,Mongoid3,Portfolio类有一个名为folders的数组字段。当我使用以下方法创建它时: db.portfolio.insert( folders: [ {"name"=>"Folder 1", "stocks"=>[ {"name"=>"stock name", "id"=>"stock id1", "qty"=>2}, {"name"=>"stock name",

Portfolio类有一个名为folders的数组字段。当我使用以下方法创建它时:

db.portfolio.insert(
  folders: [
    {"name"=>"Folder 1", 
     "stocks"=>[
        {"name"=>"stock name", 
         "id"=>"stock id1", 
         "qty"=>2},
        {"name"=>"stock name",
         "id"=>"stock id2",
         "qty"=>1}
    ]},
    {"name"=>"Folder 2",
     "stocks"=>[
        {"name"=>"stock name",
         "id"=>"stock id3",
         "qty"=>2},
        {"name"=>"stock name",
         "id"=>"stock id4",
         "qty"=>1}
    ]}
])
我在参数列表(shell):1之后得到了一个错误“SyntaxError:missing”。有什么猜测吗?

这可以:

db.portfolio.insert({
  folders: [
    {"name":"Folder 1", 
     "stocks":[
        {"name":"stock name", 
         "id":"stock id1", 
         "qty":2},
        {"name":"stock name",
         "id":"stock id2",
         "qty":1}
    ]},
    {"name":"Folder 2",
     "stocks":[
        {"name":"stock name",
         "id":"stock id3",
         "qty":2},
        {"name":"stock name",
         "id":"stock id4",
         "qty":1}
    ]}
]})

你必须包装
文件夹:[…]
你不能做
插入(x:[])
,它必须是
插入({x:[])
如果我这样做,我会得到错误语法错误缺少id 1使用
而不是
,并将
文件夹包装到
{}`。