如何“放松”包含Sequelize的结果?

时间:2019-10-18 14:27:33

标签: javascript sequelize.js

我的系统上具有以下模型:用户,订单,付款和奖学金。 一个用户有很多订单,而一个订单有很多付款。 因此,我想为每个订单获得一个用户,就像这样:

UserId:1,OrderId:1,付款:Array
用户编号:1,订单编号:2,付款:数组
UserId:2,OrderId:3,付款:Array

我尝试使用raw:true,然后我得到了 用户ID:1,订单ID:1,付款ID:1
用户编号:1,订单编号:1,付款编号:2
用户编号:1,订单编号:1,付款编号:3
用户编号:1,订单编号:2,付款编号:4
用户ID:2,订单ID:3,付款ID:5

每笔付款我也不需要一个用户。 我尝试对包括在内的付款模式使用限额,但随后我什么也收不到。

User.findAll({
            where: { delete: false },
            include: [
                {
                    model: Order,
                    include: [
                        {
                            model: Payment,
                            as: 'payments',
                        },
                        {
                            model: Scholarship,
                            as: 'scholarship',
                            include: ['institution', 'course'],
                        }]
                },
                {
                    model: Scholarship,
                    as: 'scholarship',
                    include: ['institution', 'course']
                }],
        });

我已经尝试在Payment模型上使用limit:1,但是我什么也没收到,也尝试使用distinct,但是出现语法错误。

噢,我的意思是放松一下,这是我对猫鼬可以做的事情,是我发现解释问题的最好方法。

我希望你们能理解,对不起我的英语不好。

0 个答案:

没有答案