我用蛇形的所有属性定义了我的模型。我还在配置中设置了timestamps: true
和underscored: true
,但是这些选项不会将createdAt
,updatedAt
和deletedAt
转换为蛇形。>
将自动生成的时间戳转换为蛇形的正确方法是什么?
答案 0 :(得分:1)
这是针对 createdAt
,updatedAt
和deletedAt
的:
如果您使用的是 Version5 :( DOC )
underscored: true, // <--- You need only this
如果提供了字符串,则覆盖createdAt属性的名称, 或将其禁用(如果为false)。时间戳记必须为真。强调领域 将使用带下划线的设置进行设置。
如果低于版本5 :( DOC )
如果提供了字符串,则覆盖createdAt列的名称,或者 如果为false,则将其禁用。时间戳记必须为真。不受 强调设置。
您需要做一些额外的工作:
var User = sequelize.define('User', {
createdAt: 'created_at',
updatedAt: 'updated_at'
}, {
timestamps: true,
underscored: true
});
// ------------------------ OR -----------------------
var User = sequelize.define('User', {
createdAt: {
field: 'created_at',
type: Sequelize.DATE
},
updatedAt: {
field: 'updated_at',
type: Sequelize.DATE
}
}, {
timestamps: true,
underscored: true
});