내가 콜렉션 (favorites
)가에 값을 업데이트하는 $의 사용 :MongoDB를 - 다음과 같이 문서와 하위 배열
{
"_id" : 907,
"pictures" : [
{
"id" : 107,
"url" : "http://url1",
"title" : "some title"
},
{
"id" : 111,
"url" : "http://url2",
"title" : "some other title"
}
]
}
그것은 pictures.url
를 사용하여 단지 URL을 얻을 매우 쉽습니다.
그러나 즐겨 찾는 이미지가 id=111
인 그림을 저장 한 모든 사용자의 URL을 어떻게 업데이트합니까?
pictures.107.id => 107
와
find()
를 사용하여 다음
107:['id':107,'url':'http://url1','title':'some title']
... 그리고, 그러나 그것은 나에게 바보 보인다.
더 좋은 방법이 있나요?
? '107' 또는'111'을위한 것? 아니면 둘다? – netcoder
은 중요하지 않습니다. 실제로 저는 여러 가지 업데이트를 수행하는 더 좋은 방법이 있는지 (기본적으로 picture_id를 두 번 저장하는) 해결 방법에 의지하지 않고,'pictures.url'을 그대로 보존하고 싶습니다. 'find()'. 해결 방법과 함께 몽고에서 '사진'의 모든 필드를 가져와야 만합니다. –
나는 대답을 게시했으나 다른 답을 받으면 나는 원래 질문을 이해하지 못했을 것입니다. (솔직하게 조금 불분명 함). 정확히 당신이해야 할 일은 무엇입니까? 좋아하는 111 명이있는 모든 사용자의 모든 "url"값을 업데이트하면됩니까? –