在Sequelize中,可以通过设置timestamps
属性来控制是否自动添加createdAt
和updatedAt
字段。默认情况下,timestamps
属性被设置为true
,会自动添加这两个字段。
如果只想禁用updatedAt
字段,可以在定义模型时,将timestamps
属性设置为false
,然后手动定义createdAt
字段。以下是一个示例:
const { Sequelize, DataTypes } = require('sequelize');
const sequelize = new Sequelize('database', 'username', 'password', {
host: 'localhost',
dialect: 'mysql',
});
const Model = sequelize.define('Model', {
// 其他字段定义
createdAt: {
type: DataTypes.DATE,
allowNull: false,
defaultValue: Sequelize.literal('CURRENT_TIMESTAMP'),
},
}, {
timestamps: false, // 禁用自动添加的updatedAt字段
});
// 其他模型定义和关联关系
module.exports = Model;
在上述示例中,timestamps
属性被设置为false
,禁用了自动添加的updatedAt
字段。同时,手动定义了createdAt
字段,并设置了默认值为当前时间戳。
这样,在使用Sequelize进行数据库操作时,不会自动更新updatedAt
字段。
推荐的腾讯云相关产品:腾讯云数据库 TencentDB,提供了多种数据库类型和规格选择,适用于各种应用场景。具体产品介绍和链接地址请参考腾讯云官方文档:腾讯云数据库 TencentDB。
领取专属 10元无门槛券
手把手带您无忧上云