Подтвердить что ты не робот

Что означает "через модель" в петле?

При определении отношения, использующего "slc loopback: relation", он запрашивает "через модель" в последней строке.

? Select the model to create the relationship from: CoffeeShop
? Relation type: has many
? Choose a model to create a relationship with: Reviewer
? Enter the property name for the relation: reviewers
? Optionally enter a custom foreign key:
? Require a through model? No

Может кто-нибудь кратко объяснить, что такое сквозная модель? Некоторый пример будет очень благодарен.

4b9b3361

Ответ 1

Сквозная модель обычно используется для отношения данных many to many. Например, у вас есть 3 модели:

  • User с полями id и username;
  • Team с полями id и teamName;
  • TeamMember с полями userId и teamId.

User может быть членом многих Team и Team может иметь много User. И отношение User и Team будет сохранено в TeamMember.

Чтобы создать отношения many to many в loopback, вы должны добавить свойство relation в файлы определения модели:

  • В User файле определения модели (user.json)

"relations": {
  "teams": {
    "type": "hasMany",
    "model": "team",
    "foreignKey": "userId",
    "through": "teamMember"
  }
}