首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从response - Sequelize中删除'included‘表名

从response - Sequelize中删除'included‘表名
EN

Stack Overflow用户
提问于 2021-05-11 05:53:43
回答 1查看 38关注 0票数 0

嗨,我有以下问题:

代码语言:javascript
复制
    const availAll = await InstructorAvail.findAll({
        raw: true,
        where: {
            [Op.or]: [
                { date: sun, instructorId: instructorId },
                { date: mon, instructorId: instructorId },
                { date: tues, instructorId: instructorId },
                { date: wed, instructorId: instructorId },
                { date: thurs, instructorId: instructorId },
                { date: fri, instructorId: instructorId },
                { date: sat, instructorId: instructorId },
            ],
        },
        include: [{ model: Timeslots, required: true }],
    })

这将返回以下内容,我想要实现的是删除“时隙”:

代码语言:javascript
复制
        {
            "uuid": "cef9aff7-2b2a-4ac4-aa19-95003f5ee00c",
            "date": "09May21",
            "timeslot": "480",
            "timeslotid": 29,
            "status": 1,
            "instructorId": 69,
            "createdAt": "2021-05-10T20:46:45.000Z",
            "updatedAt": "2021-05-10T20:46:45.000Z",
            "Timeslots.id": 29,
            "Timeslots.uuid": "0ff2019f-336c-439b-8876-fb4a44651556",
            "Timeslots.time_integer": 480,
            "Timeslots.name": "08:00 am",
            "Timeslots.period": "morning",
            "Timeslots.createdAt": "2021-05-10T18:52:37.000Z",
            "Timeslots.updatedAt": "2021-05-10T18:52:37.000Z"
        },

我想使用属性来简化json,并删除“时隙”。从响应中可以看到:

代码语言:javascript
复制
    const availAll = await InstructorAvail.findAll({
        raw: true,
        where: {
            [Op.or]: [
                { date: sun, instructorId: instructorId },
                { date: mon, instructorId: instructorId },
                { date: tues, instructorId: instructorId },
                { date: wed, instructorId: instructorId },
                { date: thurs, instructorId: instructorId },
                { date: fri, instructorId: instructorId },
                { date: sat, instructorId: instructorId },
            ],
        },
        attributes: [
            'id',
            'uuid',
            'date',
            'timeslot',
            'status',
            'instructorId',
            'createdAt',
            'updatedAt',
        ],
        include: [{ 
            model: Timeslots, 
            required: true, 
            attributes: [
              ['Timeslots.name', 'name'],
              ['Timeslots.period', 'period'],
         ]}],
    })

有没有人知道这是否可能?

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-12 16:19:20

所以我最终通过修改代码解决了这个问题,如下所示:

代码语言:javascript
复制
const availAll = await InstructorAvail.findAll({
        raw: true,
        where: {
            [Op.or]: [
                { date: sun, instructorId: instructorId },
                { date: mon, instructorId: instructorId },
                { date: tues, instructorId: instructorId },
                { date: wed, instructorId: instructorId },
                { date: thurs, instructorId: instructorId },
                { date: fri, instructorId: instructorId },
                { date: sat, instructorId: instructorId },
            ],
        },
        attributes: [
            'id',
            'uuid',
            'date',
            'timeslot',
            'status',
            'instructorId',
            'Timeslots.name',  //insert nested table.columnName here
            'Timeslots.period',
        ],
        include: [{ 
            model: Timeslots, 
            required: true, 
            attributes: [] // return nothing from nested table here
        }],
    })

这为我提供了输出:

代码语言:javascript
复制
{
                "id": 9127,
                "uuid": "3d642c18-1e86-419c-8f6d-a6fba772e974",
                "date": "27May21",
                "timeslot": "870",
                "timeslotId": 42,
                "status": 1,
                "instructorId": 69,
                "name": "14:30 am",
                "period": "afternoon"
            },
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67478107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档