Node.js Sequelize:查询在何处使用foreignKey而不是as

Node.js Sequelize:查询在何处使用foreignKey而不是as,node.js,postgresql,sequelize.js,Node.js,Postgresql,Sequelize.js,因此,我在获取我要查找的查询结果时遇到了一些问题。就我的模型而言 models.UserRole = sequelize.define('userrole', { name: { type: Sequelize.STRING, primaryKey: true }, permissions: { type: Sequelize.ARRAY(Sequelize.STRING), defaultValue: [

因此,我在获取我要查找的查询结果时遇到了一些问题。就我的模型而言

models.UserRole = sequelize.define('userrole', {
    name: {
        type: Sequelize.STRING,
        primaryKey: true
    },

    permissions: {
        type: Sequelize.ARRAY(Sequelize.STRING),
        defaultValue: []
    }
});

models.User = sequelize.define('user', {
    id: {
        type: Sequelize.UUID,
        defaultValue: Sequelize.UUIDV4,
        primaryKey: true
    },
    ...
});

models.User.belongsTo(models.UserRole, {foreignKey: 'role'});
我使用foreignKey而不是as,因为我希望字段被准确地称为角色,而不是Sequelize将其更改为(角色名

无论如何,我现在尝试查询并包括所选用户的权限,因此我使用

    models.User.findById(id, {
        attributes: ['id','role'],
        include: [{
            model: models.UserRole,
            attributes: ['name', 'permissions']
        }]
    })
它可以工作,但是它在字段userrole上检索它们,如下所示

{"id":"id-here","role":"admin","userrole":{"name":"admin", "permissions":["p1","p2",..]}}
最后,我的问题是如何使它从UserRole模型中检索到的内容改为在键“role”下检索?看来

{"id":"id-here","role":{"name":"admin", "permissions":["p1","p2",..]}}