Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Sequelize-两个ID上的双重连接表_Javascript_Node.js_Postgresql_Sequelize.js - Fatal编程技术网

Javascript Sequelize-两个ID上的双重连接表

Javascript Sequelize-两个ID上的双重连接表,javascript,node.js,postgresql,sequelize.js,Javascript,Node.js,Postgresql,Sequelize.js,如果我有一个“Users”表和一个“followers”表(“followers”有UserId和followdid,两者都指“Users”表上的用户) “followers”基本上是指一个用户“跟随”另一个用户 如何设置关联,以便在使用以下模型查询和包含用户模型时,它将包含两列的嵌套信息 例如: Users | id | name | email | etc | Followings | id | UserId | FollowedId | UserId和followdid都与“users

如果我有一个“Users”表和一个“followers”表(“followers”有UserId和followdid,两者都指“Users”表上的用户)

“followers”基本上是指一个用户“跟随”另一个用户

如何设置关联,以便在使用以下模型查询和包含用户模型时,它将包含两列的嵌套信息

例如:

Users
| id | name | email | etc |

Followings
| id | UserId | FollowedId |
UserId和followdid都与“users”表上的用户关联

我试过这个:

User.hasMany(Following);
Following.belongsTo(User, {foreignKey: 'FollowedId'});
Following.belongsTo(User, {foreignKey: 'UserId'});
但当我使用:

Followings.find({
  include: User
})
它只会在UserId上嵌套信息,而不会在followdid用户上嵌套信息

如果这让人困惑,请提问,谢谢


编辑:使用PostgreSQL

我认为,如果你给
的belongsTo
命名,你可以在include中指定关系。比如:

User.hasMany(Following);
Following.belongsTo(User, {foreignKey: 'FollowedId', as: 'Followee'});
Following.belongsTo(User, {foreignKey: 'UserId', as: 'User'});
其中包括:

Followings.find({
  include: [
    { model: User, as: 'Followee' },
    { model: User, as: 'User' },
  ]
})