鍍金池/ 問(wèn)答/數(shù)據(jù)庫(kù)  HTML/ 請(qǐng)問(wèn)一下sequelize 多對(duì)多關(guān)系如何增加和查詢數(shù)據(jù)

請(qǐng)問(wèn)一下sequelize 多對(duì)多關(guān)系如何增加和查詢數(shù)據(jù)

code表和tag表是多對(duì)多關(guān)系

code表 model

'use strict';
module.exports = function(sequelize, DataTypes) {
  var code = sequelize.define('code', {
    markdown: DataTypes.TEXT,
    title:DataTypes.STRING
  }, {
    timestamps: true,
    paranoid: true,
    classMethods: {
      associate: function(models) {
        code.belongsToMany(models['tag'], { through: 'tagcode' })
      }
    }
  });
  return code;
};

tag表 model

'use strict';
module.exports = function(sequelize, DataTypes) {
  var tag = sequelize.define('tag', {
    name: DataTypes.STRING,
  }, {
    timestamps: true,
    paranoid: true,
    classMethods: {
      associate: function(models) {
        tag.belongsToMany(models['code'], { through: 'tagcode' })
      }
    }
  });
  return tag;
};

上面兩個(gè)model會(huì)生成tagcode表。

tag表事先已經(jīng)有數(shù)據(jù)。

  dbModels.code.create({
        title: req.body.title,
        markdown: req.body.markdown,
        tags: [
            { name: 'Alpha'},
            { name: 'Beta'}
        ]

    },
        {
        include: {model:dbModels.tag }
        }
    ).then(function (code) {
        res.status(200).json(code)
    })

上面的代碼每一次添加code的時(shí)候都會(huì)添加‘Alpha’‘Beta’ tag。
現(xiàn)在想實(shí)現(xiàn)添加code記錄的時(shí)候傳遞tagId(多個(gè)),然后在關(guān)系表tagcode 添加相應(yīng)的關(guān)聯(lián),并不在tag表添加數(shù)據(jù)。
請(qǐng)問(wèn)一下該如何實(shí)現(xiàn)?

回答
編輯回答
吢涼

怎么解決呢??

2017年4月6日 11:57
編輯回答
陌離殤

謝邀,部署sequelize

2017年1月11日 06:54