【问题标题】:How can I pass parameters to getter in Sequelize model?如何在 Sequelize 模型中将参数传递给 getter?
【发布时间】:2021-08-02 05:15:08
【问题描述】:

我在做什么:

我正在阅读包含 townshipsreligions 等数据的 csv。在 csv 中,它们是 text 值。但当然在我的数据库表中,它们是foreign_key。所以要插入这些,我需要将那些 text 值映射到 id

可以像下面这样获取id

const { townshipId } = await models.Township.findOne({
    where: { name: township },
    attributes: ["townshipId"],
    raw: true,
});

问题:

但我认为的问题是那些findOne(s) 将填充到我的整个方法中,因为除了township之外,我还有 50 个其他属性。

我正在尝试什么

我正在尝试将 township-name 传递给 getter 方法,期待它的等效的 townshipId

我发现可以在sequelize 中使用getter and setter。但我不知道如何将参数传递给那些。

我的问题

我是否在尝试导入 csv 数据的正确方法?如何在 sequelize 中使用带参数的 getter(和 setter)?

【问题讨论】:

    标签: mysql node.js sequelize.js getter


    【解决方案1】:

    也许如果您想从结果中排除列,您可以传递“属性”字段,例如:

    attributes: { exclude: ['field1','field2'] }

    这样您就不会在结果中显示列“field1”和“field2”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-11
      • 2020-08-09
      • 2017-02-13
      • 2020-07-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多