Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 如何使默认时间戳列表现出来?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图强制这些列做两件事:

>使用“没有时区的时间戳”(后端是POSTGRes).
>实际上将后端的认值设置为“Now / utc”.

{
        // a bunch of column deFinitions
        createdAt: { type: DataTypes.DATE,DefaultValue: sequelize.fn('Now') }
    },{
        timestamps: false,comment: "this isn't even the real comment"
    }

结果如下:

create table IF NOT EXISTS "common"."images" ("id" VARCHAR(255),"imageType"
VARCHAR(255),"mimeType" TEXT,"source" VARCHAR(255),"path" TEXT UNIQUE,"createdAt" timestAMP WITH TIME ZONE DEFAULT Now(),PRIMARY KEY ("id")); 
COMMENT ON TABLE "common"."images" IS 'blah blah blah.';

但是,我找不到任何关于如何强制将其作为timestamp-without-tz的文档,或者我如何在时区’utc’中使认的“Now()”.

这些都可能吗?

如果可能的话,可以不将时间戳设置为false并按照我的方式手动定义列来完成吗?

解决方法

显然,对于这个问题的后半部分,有一个相当优雅的解决方案. Sequelize提供了一种“文字方法,允许您(除其他外)完全按照您的喜好制作认值.

{
    // a bunch of column deFinitions
    createdAt: { type: DataTypes.DATE,DefaultValue: sequelize.literal("(Now() at time zone 'utc')") }
},

我用双引号括起来,因为POSTGRes希望在后端的“utc”周围加上单引号.

当然,Yuri是正确的,因为Sequelize中没有“没有时区”的数据类型,也没有任何以这种方式配置数据类型的选项.我知道这里不赞成部分答案,但认为这可能有助于其他人.

大佬总结

以上是大佬教程为你收集整理的node.js – 如何使默认时间戳列表现出来?全部内容,希望文章能够帮你解决node.js – 如何使默认时间戳列表现出来?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。