2014-06-12 39 views
0

我有多個型號合作伙伴PartnerUsersContentRequestUserContents多個預先加載包括sequelizeJs

協會就像

// Association between Partner & PartnerUsers 
m.Partners.hasMany(m.PartnerUsers); 
m.PartnerUsers.belongsTo(m.Partners); 

// Association between PartnerUsers & UserContents 
m.PartnerUsers.hasMany(m.UserContents); 
m.UserContents.belongsTo(m.PartnerUsers); 

// Association between Partner & ContentRequests 
m.Partners.hasMany(m.ContentRequests); 
m.ContentRequests.belongsTo(m.Partners); 

我現在用預先加載,我不知道如何使用多個預先加載。 我做這樣的

Partner.find(
    where: { 
    id: id 
    }, 
    include: [PartnerContents, ContentRequests], 
    include: [{ 
    model: PartnerUsers, 
    include: [UserContents] 
    }] 
) 
    .success(function(partner){ 
    }) 

但不給我partner.partnerContents & partner.contentRequests

我'有** patner.partnerUsers [0] .userContents **

如果我這樣做

Partner.find(
    where: { 
    id: id 
    }, 
    include: [PartnerContents] 
    //include: [{ 
    // model: PartnerUsers, 
    // include: [UserContents] 
    // }] 
) 
    .success(function(partner){ 
    }) 

我有個patner.partnerContents

推薦我,我怎麼能得到所有三個由協會像patner.partnerContents,patner.contentRequests和patner.partnerUsers [0] .userContents

回答

1

看到documentation options.include

選中此項:

Partner.find({ 
    where: { 
     id: id 
    }, 
    include: [ 
     PartnerContents, 
     ContentRequests, 
     { 
      model: PartnerUsers, 
      include: [UserContents] 
     } 
    ]}) 
    .success(function(partner) { 

    });