我正在学习node.js和sequelizer,我遇到了一个问题,即我使用Sequelizer创建了一个用户模型,不幸的是当我想在index.js中运行sequelizer.sync();它在控制台中向我显示结果,但它不会创建表格。
我的模型:
const Sequelize = require('sequelize');
const sequelize = require('../util/database');
const User = sequelize.define('user', {
id: {
type: Sequelize.INTEGER,
autoIncrement: true,
allowNull: false,
primaryKey: true
},
name: {
type: Sequelize.TEXT,
allowNull: false
},
surname: {
type: Sequelize.TEXT,
allowNull: false
}
});
module.exports = User;
我的数据库配置
const Sequelize = require('sequelize');
const sequelize = new Sequelize('node-nauka', 'root', '', {
dialect: 'mysql',
host: 'localhost'
});
module.exports = sequelize;
index.js
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const defaultRoutes = require('./routes/default');
const sequelize = require('./util/database');
app.use(bodyParser.json());
app.use(defaultRoutes);
sequelize.sync().then(result => {
console.log(result);
app.listen(3000);
}).catch(err => {
console.log(err);
});
同步结果:https://pastebin.com/rtxqkMtx 我怀念思路,试了几个数据库,效果一样,没有错误,但是也没有创建表。
最佳答案
就我而言,我只是将模型导入到 app.js
const sequelize = require("./src/Utils/database");
const User = require("./src/models/User");
sequelize
.sync()
.then((result) => {
console.log(result);
})
.catch((err) => {
console.log(err);
});
@PawelC 你的代码和我的一样,所以它也适合你
谢谢
关于node.js - Sequelize 同步和 Node.js 不创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55503826/