Продолжить машинопись. Пользовательские методы (ассоциированные) в классе - PullRequest
0 голосов
/ 10 июля 2020

В старой версии мы могли бы сделать:

User.associate = (models) => {
  User.hasMany(models.Something);
}

Следуя документации https://sequelize.org/master/manual/typescript.html нет описанного способа, как это сделать. Если вы попытаетесь сделать очевидное и просто добавите метод:

interface Associate {
  associate: Function;
}

class User extends Model<UserAttributes, UserCreationAttributes> implements UserAttributes, Associate {
  //...other fields

  public associate() {}
}

Когда вы попытаетесь выполнить User.associate(), вы получите ошибку компилятора от TS, говоря: Property 'associate' does not exist on type 'typeof User'

Цель чтобы определить все модели в разных файлах, а затем, когда они все у вас будут, вызовите эту функцию, чтобы вы могли создавать ассоциации.

Идеи?

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