2014-06-10 2 views
0

나는 Meteor.Method을 사용하고 내가 삽입 할 문서의 배열을 생산하는이 패턴을 사용하고 online documents삽입 여러 문서

에 쇼 등의 여러 문서를 삽입하기 위해 노력하고있어. 대신 여러 문서를 삽입

var arr = []; 

    for (i=0;i<10;i++){ 
    doc = {} 
    doc["A"] = i; 
    doc["B"] = i*18; 
    arr.push(doc) 
    } 

    bulks.insert(arr) 

, 그것은 하나의 새로운 문서로 내 arr 각 문서를 내장 : 문서가 individualy 삽입되도록

{ 
     "_id" : "YqfTbSmrGEcTAhFhj", 
     "0" : {"A" : 0, "B" : 0 }, 
     "1" : {"A" : 1,"B" : 18}, 
     "2" : {"A" : 2,"B" : 36}, 
     "3" : {"A" : 3,"B" : 54}, 
     {...}, 
     "9" : {"A" : 9,"B" : 162} 
} 

어떻게 배열을 만들 수 있습니까?

{ "_id" : "YqfTbSmrGEcTAhFhj", "A" : 0, "B" : 0 } 
{ "_id" : "mrGEcTAhFhjYqfTbS", "A" : 1, "B" : 18 } 
{ "_id" : "hjYqfTmrGEcTAhFbS", "A" : 2, "B" : 36 } 
{...} 
{ "_id" : "hjYqfTmrGEcTAhFbS", "A" : 9, "B" : 182} 

[추가 정보] 내가 유성에 성공적으로 쉘에서이 작업을 수행 할 수 있지만되었습니다 - 그래서 드라이버의 제한 할 수 있습니다.

유성에서는 가능합니까?

+0

나는 mongodb 2.4.8에서 코드를 시도해 보았고 그 코드는 잘 동작하고 별도의 문서를 삽입했는데, 어떤 버전의 mongodb를 사용하고 있습니까? –

+0

db.version() = 2.6.1 – garrilla

+0

여기에 게시 한 내용과 실제로 실행중인 내용이 일치하지 않는다고 생각합니다. bulks.insert (arr)은 쉘에 유효한 구문이 아니며 db.bulks.insert (arr) 여야합니다. 몽고 껍질이나 운전 기사와 같이하고 있습니까? 삽입하기 전에 arr을 인쇄해볼 수 있습니까? 쉘에 arr을 입력하기 만하면됩니다. – helmy

답변

0

Meteor 컬렉션은 Mongo 컬렉션의 100 % 직접 번역이 아니며 별도의 레이어에 포장되어 있습니다. 따라서 Mongo 메서드를 직접 사용할 수는 없습니다. insert은 유성우 컬렉션 삽입물이었습니다. the documentation에 따라 한 번에 하나의 문서 만 삽입 할 수 있습니다.