当需要sequelize Model类时,正确的结构可能是:
const { Sequelize, DataTypes } = require('sequelize');
// 创建sequelize实例
const sequelize = new Sequelize('database', 'username', 'password', {
host: 'localhost',
dialect: 'mysql',
});
// 定义Model类
const User = sequelize.define('User', {
// 定义模型属性
firstName: {
type: DataTypes.STRING,
allowNull: false
},
lastName: {
type: DataTypes.STRING
// allowNull 默认为 true
}
}, {
// 这是其他模型参数
});
// 同步模型到数据库
User.sync()
.then(() => {
console.log('Model synced to database');
})
.catch((error) => {
console.error('Error syncing model to database:', error);
});
// 导出Model类
module.exports = User;
在上述代码中,首先需要引入sequelize
和DataTypes
,然后创建一个sequelize
实例,用于连接数据库。接下来,使用sequelize.define
方法定义一个Model类,其中包含模型的属性和其他参数。最后,通过调用User.sync()
方法将模型同步到数据库中,并将Model类导出供其他模块使用。
这样,其他模块就可以通过require
语句导入该Model类,并使用它进行数据库操作。例如:
const User = require('./user-model');
// 创建新用户
User.create({
firstName: 'John',
lastName: 'Doe'
})
.then((user) => {
console.log('User created:', user.toJSON());
})
.catch((error) => {
console.error('Error creating user:', error);
});
以上代码演示了如何使用导入的User
模型类创建一个新用户。
领取专属 10元无门槛券
手把手带您无忧上云