2015-11-25 20 views
10

derneği ile Sequelize güncelleme ve böyle tek seferde tüm bu kadar dernek:bir satır oluşturmak mümkündür sequelize olarak

güncellemesi için bir eşdeğer var mı? Ben

model.user.update(req.body.user, {where: {id: req.user.user_id}, include: [model.profile]}) 

çalıştı Ama sadece sen güncellemek istediğiniz alt modeli de dahil olmak üzere bir model bulmak zorunda eserler

model.user.create(user, {transaction: t, include: [model.profile]}) 

cevap

6

İlk oluşturmak için bu Doing kullanıcıya

güncellenmesi ediyor. daha sonra kolayca güncellemek için alt modelin referansını alabilirsiniz. Referans için bir örnek gönderiyorum. umarım yardımcı olur.

var updateProfile = { name: "name here" }; 
var filter = { 
    where: { 
    id: parseInt(req.body.id) 
    }, 
    include: [ 
    { model: Profile } 
    ] 
}; 

Product.findOne(filter).then(function (product) { 
    if (product) { 
    return product.Profile.updateAttributes(updateProfile).then(function (result) { 
     return result; 
    }); 
    } else { 
    throw new Error("no such product type id exist to update"); 
    } 
}); 
+0

bu özelliktir yaklaşımla görüyorum tek sorun başka hiçbir isteği orjinal filtre edilmiş nesne güncellenir varsayalım olduğunu – Jacob

+2

güncellenmesi için en iyi çözüm gibi görünüyor. –