2013-08-10 19 views
7

düğüm js, yelkenler js, su hattı. itme değerleri (yelkenler js) su hattı

'u ekledikten sonra değerleri aşağıdaki şemaya güncellemem gerekiyor (veya itmeli) Ben su hattı ve mongodb içeren yelkenleri kullanıyorum.

{ 
"countries": { 
"states": [ 
{ 
"statename": "state", 
"districts": [ 
{ 
"distname": "district", 
"cities": [ 
{ 
"cityname": "Hyderabad", 
"places": [ 
       { 
        "placename": "hitechcity" 
       } 
       ] 

      } 
     ] 
     } 
    ] 
    } 
] 
} 
} 

Ben

{ 
"countries": { 
"states": [ 
{ 
"statename": "state", 
"districts": [ 
{ 
"distname": "district", 
"cities": [ 
{ 
"cityname": "Hyderabad", 

       "places": [ 
       { 
        "placename": "hitechcity" 
       }, 
       { 
        "placename": "someother place" 
       } 
       ] 

      } 
     ] 
     } 
    ] 
    } 
] 
} 
} 

Biri yardım i güncellemeden

sonra böyle bir şeye ihtiyacım güncellemek için nasıl bilmek gerekir.

+0

Mogodb en '$' benim verilerini sorgulama ediyorum - operatörü dizisi yuvalama sadece 1 seviyesini destekler, böylece orada sanmıyorum Mevcut şemanız için mevcut bir çözümdür. belki bir kez daha tekrar düşünmeli ve daha az iç içe geçmelisiniz. –

cevap

16

Güzel soru! Sen find() istiyorum, sonra save() ilgili modeli örneği olacak: Ben Yelkenler ile ben mikermcneil cevabı kullanmak mümkün olmadığını söyledi yazım hatası olup olmadığını :)

+0

Teşekkürler mikermcneil, Bu harika ama bu 23 ne anlama geliyor? –

+0

Ah, üzgünüm - açıklığa kavuşmuş olmalıydı. 23, aradığımız kullanıcının kimliği, sadece bir örnek. – mikermcneil

+0

oh..ok mcneil, bilgi için teşekkürler –

3

için üzgünüm telefonumda Done

User.findOne(23).exec(function (err, user) { 
    user.roles.push({ /* whatever */ }); 
    user.save(function (err) { /* all done */ }); 
}); 

. Ben yerli gitmek zorunda kaldı:

Runtestunit.native(function(err, runtestunit){ 
    runtestunit.find({sessionID : sessionData.id_}).toArray(function(err, results) { 
     if (err) return res.serverError(err); 
     runtestunit.update({ _id: results[0]._id }, 
      { $push: { screenshots: filename } }, 
      function(err, screenshots) { 
      if(err) sails.log.err(err) 
     else sails.log.info("Item pushed") 
     }) 
    }); 
}); 

Bilginize ben sessionData.id_ anahtar

+3

Bunu gönderdiğiniz için teşekkür ederiz! Bu cevabı Google’da bulmalarına yardımcı olmak için niçin '.native()' i kullanmanız gerektiğini açıklamak için bunu genişletmek ister misiniz? – mikermcneil