我的model //model/user.js
//我的调用 //controller/home.js
补充:我按照EGG的官网引入了sequelize的官方实例,在sequelize.create()插入数据的时候,第一条数据不报错,第二条数据报错:Duplicate entry ‘0’ for key ‘PRIMARY’,引起问题的原因是因为sequelize在插入数据时autoIncrement并没有起作用,主键id一直都是0,并没有自增。
拜托大佬们了,已经百度全网了,收到的回答就是让我设置自增ID,可是从navicate for mysql里面来看已经是自增的了,创建model里也指定autoIncrement了。
哇。神奇的网络。
面试时各种大神各种吹。天昏地暗日月无光造航母, 结果连一个官网示例问题都没人搞得定。哇。 神奇网络
会不会是User.sync()的原因?尝试注释一下看看
@gejigejigeji 哇个锤子哟 这个sync你生成表到数据库中的时候这个字段有子自增么
@gejigejigeji 心态就这样崩了?
我用sync()也出过问题,不知道为什么,然后用的migration,就可以了
我的建议是尽量避免用sync(),因为sync真的会出问题,有时候服务都启动不起来,我之前就遇到过;
mysql my.ini腾讯云centos初始化安装的时候,会自动配置不允许自增,删掉就行了。S开头的单词我忘了。
哎,还是造福下社会吧。
歪个楼,修改表结构的时候感觉使用sync({alter: true}) 比较好一点, sync({ force: true })的话取决于你的数据库原来的设置,还是可能会出问题。
我以为终于有人发现了sequelize的隐藏bug,显然不是。