nodejs中sequelize的create方法默认执行语句中的id,如何去掉

module.exports=db.define('dnt_topics',{
tid:{
type:Sequelize.INTEGER,
field:'tid',
primarykey:true,
autoIncrement:false,

    },
            创建的model中有tid主键,但是在查询时,会默认被加上一个id的是怎么回事?

            从命令行的调试信息中看到自动加了一列(id),但是实际的数据库中是不存在id这一列的。

主键定义 Primary keys
Sequelize 默认表有一个为id 主键属性.

如想定义自己的主键也很简单:

 sequelize.define('collection', {
  uid: {
    type: Sequelize.INTEGER,
    primaryKey: true,
    autoIncrement: true // 对postgres来说会自动转为 SERIAL 
  }
});

sequelize.define('collection', {
  uuid: {
    type: Sequelize.UUID,
    primaryKey: true
  }
});

如果您的模型里根本就没有主键的话, 也可能用 Model.removeAttribute('id') 来去掉!

参考官方文档 :

http://docs.sequelizejs.com/manual/advanced/legacy.html#primary-keys

https://zhidao.baidu.com/question/1243895320571812539.html