【问题标题】:Sequlize association returns SequelizeInstance instead of objectSequelize 关联返回 Sequelize Instance 而不是 object
【发布时间】:2015-01-05 19:00:17
【问题描述】:

我正在使用 Sequlizejs 2.0.0-rc4。

我有两个实体:Feeds(包含一个 owner_id 字段)和Owners。基本上,FeedsOwners 之间存在一对多的关系——Owner 有很多 Feeds

我尝试过多种不同的建模方式,但唯一正确的方法是:

Owner.hasMany(Feed, {foreignKey: 'owner_id'});
Feed.belongsTo(Owner, {foreignKey: 'owner_id'});

唯一的问题是,当我尝试获取这样的 Feed 时:

models.feeds.findAll({
    include: [models.owners]
}).then(function (feeds) {
   // feeds will contain a SequlizeInstance object
});

然后结果将包含 SequlizeInstance 对象而不是 Owner 对象,然后我必须通过 feeds.owners.dataValues 之类的东西访问它。

这里有什么问题?

【问题讨论】:

    标签: node.js sequelize.js


    【解决方案1】:

    这里没有问题:)。 Sequelize 返回 sequelize 实例,因为它们允许您执行所有可爱的 sequelize 操作,例如 feed.owner.updateAttributes({.. })

    如果您想要来自所有者对象的普通值,您应该调用gettoJSON

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-04
      • 2020-06-29
      • 2020-12-22
      • 2020-08-02
      • 1970-01-01
      • 2021-05-14
      • 2020-10-19
      相关资源
      最近更新 更多