【问题标题】:Prevent sequelize from returning timestamps during select and update防止 sequelize 在选择和更新期间返回时间戳
【发布时间】:2022-11-10 20:07:58
【问题描述】:

在使用 sequelize 时,如何防止 sequelize 在 findAll 或任何选择/更新查询期间选择 createdAtupdatedAtdeletedAt 列?

注意:我不想使用timestamps: false 禁用模型中的时间戳。要求是通知 sequelize 在 SELECT 和 UPDATE 期间不要选择这些时间戳列。

此外,findAllfindOne 也有 exclude。但是我想知道是否有一种方法可以避免明确提及要重复排除的字段并在全局(模型)的某个地方指定它。

【问题讨论】:

    标签: node.js sequelize.js


    【解决方案1】:

    您是否尝试过像这样使用“属性”选项?

    Model.findAll({
     attributes: { exclude: ['createdAt', 'updatedAt', 'deletedAt'] }
    });
    

    docs 我看到如果您使用postgres,返回选项可以返回值。

    【讨论】:

    • 是的。这适用于findAllfindOne。我们如何通过returning: true 更新来做到这一点?
    猜你喜欢
    • 2021-11-02
    • 2023-04-02
    • 2016-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-17
    • 2022-01-14
    • 1970-01-01
    相关资源
    最近更新 更多