我正在使用Sequelize for PostgresSQL . 例如:我有两个表 FriendshipUser . 为了使每个用户都能 Build 友谊,我有两个关系n:n .

Associations in Sequelize

User.hasMany(Friendship,
  {
    as: "friendshipsAsked",
    foreignKey: "asked_user_id",
    joinTableName: "friendship"
  });

User.hasMany(Friendship,
  {
    as: "friendshipsAsking",
    foreignKey:  "asking_user_id",
    joinTableName: "friendship"
  });

Friendship.belongsTo(User,
  {
    ...
  });

Friendship.belongsTo(User,
  {
    ...
  });

我最大的问题是为用户查询友谊 . 当我有用户模型时,我必须得到 user.getFriendshipsAsking()user.getFriendshipsAsked() 然后合并它们 .

是否有可能改变关系,所以我可以在SQL中使用 user.getFriendships() ,使其像_2893873一样执行?

我想有一个更好的解决方案来模拟数据库中的用户之间的 friendship