使用 Sequelize.js 进入包含模型

Posted

技术标签:

【中文标题】使用 Sequelize.js 进入包含模型【英文标题】:Having into Include model using Sequelize.js 【发布时间】:2018-08-17 08:38:36 【问题描述】:

我在使用 sequelize.js 加入时遇到问题。我需要所有用户的最后历史日期。我正在尝试这个,但出了点问题:

this.users.findAll(
    include: [
        
            model: History,
            attributes: [
                'value',
                'date'
            ],
            having:  date: [sequelize.fn('MAX', sequelize.col('date')), 'max_date']
        
    ]

这不起作用,不知道您是否知道如何返回此结果。

谢谢

【问题讨论】:

【参考方案1】:

我认为你可以通过 order bylimit 来做到这一点,给你:

this.users.findAll(
    include: [
        
            model: History,
            separate : true ,
            order : [['date','desc']] ,
            limit : 1
        
    ]

【讨论】:

谢谢,但不起作用。未处理的拒绝类型错误:无法读取未定义的属性“推送” 也请加user_id 不起作用,但我的历史列表需要模型用户中的必需值。我从历史中返回所有属性并且工作正常谢谢@VivekDoshi @BráulioFigueiredo,很高兴知道这一点

以上是关于使用 Sequelize.js 进入包含模型的主要内容,如果未能解决你的问题,请参考以下文章

使用 Sequelize.js 和 PostgreSQL 在关联模型上查询 JSONB 字段

如何使用 sequelize.js 从关联模型中加载属性

Sequelize.js 插入具有一对多关系的模型

Node.js Sequelize ORM 模型问题

从已经定义的模型中获取 Sequelize.js ENUM 值

即使 paranoid 设置为 true,Sequelize.js 仍会删除表行