Quantcast
Channel: CNode:Node.js专业中文社区
Viewing all articles
Browse latest Browse all 14821

多表关联为何sequelize 的 attributes不生效?

$
0
0

有 user表,role表,然后user和role建立了多对多的关系 代码是这样的

let user = await models.User.findOne({
    where: {id: id},
    attributes: ['name','id']
});
let roles = await user.getRoles({
    attributes: ['name','id'],
    raw: true
});

user和role数据都是能取到的,user 的 attributes也是生效的, 但是roles 的就不行了,role表本身的字段能过滤,但是不知道为什么一定会带上user与role 的关系数据

大概就是我想要的是这样的数据

{ 
    id: 1,
    name: '管理员'
}

却给了我这样的数据

{ 
    id: 1,
    name: '管理员',
    'userRole.createdAt': 2016-09-02T09:43:07.714Z,
    'userRole.updatedAt': 2016-09-02T09:43:07.714Z,
    'userRole.userId': 1,
    'userRole.roleId': 1 
}

看文档也没找到解决的办法 http://docs.sequelizejs.com/en/v3/


Viewing all articles
Browse latest Browse all 14821

Trending Articles