PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Sequelize как да използвам асоциативна таблица?

Решението на моя проблем беше в документацията под Асоцииране на обекти]1 (Сигурно съм го пропуснал).

Това обяснява, че ако belingsToMany е правилно конфигуриран, няколко метода ще бъдат динамично създадени за управление на асоциацията (getX, addX, getXs, addXs,...).

Вторият ми проблем беше псевдонимът, който дадох на belongsToMany, тъй като не знаех, че взема името на модела, сам зададох име и ги размених.

След като премахнах псевдонимите, работи добре.

db.Game.belongsToMany(db.Platform, {through: db.GamePlatforms, foreignKey: 'game_platforms_fk_game'});
db.Platform.belongsToMany(db.Game, {through: db.GamePlatforms, foreignKey: 'game_platforms_fk_platform'});

И ето кода, който използвам, за да тествам „добавяне на асоциация“.

Game.find({where: {game_short: 'SFV'}})
              .then(function(game) {
                Platform.find({where: {platform_short: 'PC'}})
                  .then(plat => game.addPlatform(plat));
              })
              .catch(err => console.log('Error asso game and platform', err));



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Проблеми с връзката с SQLAlchemy и множество процеси

  2. Как да конвертирате postgresql 9.4 jsonb в обект без език на функция/сървър

  3. ClassCastException:Цяло число не може да бъде прехвърлено към Long, докато се опитвате да повторите идентификаторите на обекти

  4. Най-добрите нови функции в PostgreSQL 14

  5. В psql как да стартирам цикъл за заявка за избор с CTE и да получа показания изход, ако го стартирам в db само за четене?