首页 > 解决方案 > 有没有办法像猫鼬一样在 Sequelize 时间戳中设置“过期”选项?

问题描述

const sequelize = require("../config/sequelize");
const Sequelize = require("sequelize");

const Token = sequelize.define('token', {
    token: {
        type: Sequelize.STRING,
        allowNull: false
    },
    createdAt: {
        type: Sequelize.DATE,
        allowNull: false,
        defaultValue: Sequelize.NOW
        expires: 43200
    }
})

我可以在 Sequelize 的上述代码中添加 expires 选项吗?

标签: javascriptnode.jsexpressmongoosesequelize.js

解决方案


@ayindesamuel 为什么不直接在续集模型中创建 tokenExpires 键?此外,包括第三个对象允许您打开时间戳(createdAt 和 updatedAt),这些列将由 sequelize 自动添加。因此,您不必手动创建密钥。

const sequelize = require("../config/sequelize");
const Sequelize = require("sequelize");
const Token = sequelize.define('token', {
    token: {
        type: Sequelize.STRING,
        allowNull: false
    },
    tokenExpires : {
        type: Sequelize.DATE,
        defaultValue: Date.now() +  43200
    }
}, { timestamps : true })

推荐阅读