Я пытаюсь создать приложение-клон Tinder, в котором у меня есть два разных типа пользователей: player
и trainer
, где они могут совпадать. Я просматривал документы, пытаясь понять, какие ассоциации нужно реализовать между таблицей matches
и таблицами messages
, где запись совпадения имеет playerId и trainerId, то же самое относится к сообщениям.
Мой вопрос:
как мне это реализовать и когда применять ассоциации ownTo, hasMany, ownToMany?
это то, что я сделал до сих пор:
players.model.js
players.associate = function (models) {
players.hasMany(models.messages);
players.hasMany(models.matches);
};
trainers.model.js
teachers.associate = function (models) {
trainers.hasMany(models.messages);
trainers.hasMany(models.matches);
};
messages.model.js
messages.associate = function (models) {
messages.belongsTo(models.players);
messages.belongsTo(models.trainers);
messages.belongsTo(models.matches);
};
matches.model.js
matches.associate = function (models) {
matches.belongsTo(models.players);
matches.belongsTo(models.trainers);
matches.hasMany(models.messages);
};