2012-10-26 2 views
2

Erlang에서 mongodb를 맵으로 사용하고 싶습니다. 나는 이것의 예를 찾을 수 없다.Erlang의 MongoDB에서 맵 생성 및 수정

application:start(mongodb). 
Host = {localhost, 27017}. 
{ok, Conn} = mongo:connect(Host). 

mongo:do(safe, master, Conn, test, fun() -> 
    mongo:delete(foo, {}),     
    mongo:insert(foo, {x,1}), 
    mongo:insert(foo, {a,12}), 
    Pid = mongo:find(foo, {a}),  
    Result = mongo_cursor:rest(Pid),     
    mongo_cursor:close(Pid), 
    Result end). 

결과 :

{ok,[{'_id',{<<80,138,211,178,41,152,132,104,251,0,0,35>>}, 
      x,1}, 
    {'_id',{<<80,138,211,178,41,152,132,104,251,0,0,36>>}, 
      a,12}]} 

왜 두 개의지도를 만들 않습니다를 이것은 내가 지금까지 가지고 무엇인가? 매핑되지

+0

누군가가이 질문에 도움이되었다고 생각합니다. :) – Kev

답변

1

지도를 수정하는 방법이 맵의 목록입니다. map 또는 dict과 유사한 콜렉션을 사용하려는 경우 _id 값을 키로 제공하고 repsert (aka upsert)을 사용하여 문서가 이미있는 경우 업데이트하거나 그렇지 않은 경우 삽입해야합니다.

1

몽고 때문에이 개 문서 자동 생성 된 고유 한 ObjectId가와 끝까지, 당신은 어떤 _id 값을 지정하지 않고 MongoDB를에 두 삽입을하고 스스로