2017-06-06 12 views
1

Sequelize expressをNode.jsとバックエンドとして使用しています。私は、クエリを実行し、Sequelizeインクルード・リターン・データ

でデータを送信

module.exports = function (sequelize, DataTypes) { 
    var Seller = sequelize.define("Seller", { //... 
    }, { 
     tableName: 'seller', 
     timestamps: false, 
     freezeTableName: true, 
     classMethods: { 
      associate: function (models) { 
       Seller.hasMany(models.Meetings, {foreignKey: 'seller_id'}); 

       Seller.belongsToMany(models.Event, { 
        through: 'SellerPresent'}); 
      } 
     } 
    }); 

    return Seller; 
}; 

module.exports = function (sequelize, DataTypes) { 
    var Event = sequelize.define("Event", { //...}, 
{ 
      tableName: 'event', 
      timestamps: false, 
      freezeTableName: true, 
      classMethods: { 
       associate: function (models) { 
        Event.hasMany(models.Meetings, {foreignKey: 'event_id'}); 

       Event.belongsToMany(models.Buyer, { 
        through: 'BuyerPresent'}); 

       Event.belongsToMany(models.Seller, { 
        through: 'SellerPresent'}); 
       } 
      } 
     }); 

    return Event; 
}; 

モデル売主:私は多くの

モデルイベントには多くの関係を持つモデルのイベントとモデルの買い手を持っています

res.render('path', {'results':seller}) 

:私は、受信した端末で

function findIdSeller(selectEvent) { 
    var match = { 
     where: { 
      event: selectEvent 
     }, 
     // include: { 
     //  model: Seller 
     // }, 
     include: [{ 
      model: Seller, 
      nested: false 
     }], 
     // plain:true 

     raw: true 
    }; 
    return models.Event.findAll(match) 
} 
exports.findDataSellerPromise = function (selectEvent) { 
    return findIdSeller(selectEvent).then(function (result) { 
     return result.map(function(seller) { 
      console.log('SELLINFO: ', seller); 
      return seller; 
     }); 
    }); 
}; 

{ 
    id: 4, 
    incoming: 2, 
    event: 4, 
    'Sellers.id': 1, 
    'Sellers.name_firm': 'kdm srl', 
    'Sellers.site': 'www.terrebasse.com' 
} 

は、どのように私のようにアイテムを返すことができます。

{ 
    id: 4, 
    incoming: 2, 
    event: 4, 
    Sellers: { 
     id': 1, 
     name_firm: 'kdm srl', 
     site: 'www.terrebasse.com' 
    } 
} 
+0

同様の問題に直面して誰にも 'リターンres.json(売り手)を使用します;' – Ellebkey

答えて

1

インスタンスとして売り手を与えるだろう、クエリ からraw: trueを削除します各イベントごとに

のようなもの

{ 
    //Event1 properties 
    Sellers: { 
     // Associated sellers properties 
    } 
} 

は ..私はパーティーに手遅れだと思う。しかし