Как я могу создать правильное продолжение соединений для дружбы пользователей? - PullRequest
0 голосов
/ 26 октября 2018

Я создаю несколько моделей, пользователей, друзей, ....Это ассоциация модели User:

User.belongsToMany(models.User, {as: 'Friends', through: models.Friends});

А это модель Friends:

const Friends = sequelize.define('friends', {
    accepted: {
      type: DataTypes.BOOLEAN,
      defaultValue: false,
      allowNull: false
  }
  });

  return Friends;
};

и, очевидно, я получаю таблицу, подобную этой:

accepted |         createdAt          |         updatedAt          | userId | FriendId 

поэтому, когда я пытаюсь создать строку дружбы, например:

await models.Friends.create({accepted: true, userId: 2, FriendId: 1});
  await models.Friends.create({accepted: true, userId: 3, FriendId: 2});

, я получаю сообщение об ошибке:

SequelizeForeignKeyConstraintError: insert or update on table "friends" violates foreign key constraint "friends_FriendId_fkey"

, потому что userId или friendsId не могут быть дважды?что не так с этим?Thx!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...