Как выбрать какое поле ссылается на внешний ключ в LoopbackJS - PullRequest
0 голосов
/ 04 мая 2018

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

Например, если у меня есть таблица Product и таблица ProductTag. A Product имеет много ProductTags. Тогда моя таблица ProductTag будет иметь внешний ключ к таблице Product через:

{ // Product
  ...
  "relations": {
    "productTags": {
      "type": "hasMany",
      "model": "ProductTag",
      "foreignKey": ""
    }
  }
}

Поля моей таблицы Product: id - Я хочу установить это как id , sku - уникально , price и т. Д.

Тогда связь создаст внешний ключ, ссылающийся на Product.id. Как мне ссылаться на Product.sku вместо?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Из документации

  "relations": {
    "orders": {
      "type": "hasMany",
      "model": "Order",
      "foreignKey": "customerId",
      "primaryKey": "id" // optional
    },

У целевой модели Order есть свойство, customerId, как у иностранного ключ для ссылки на декларируемую модель (Заказчик) идентификатор первичного ключа .

0 голосов
/ 04 мая 2018

Ваш продукт имеет много тегов продукта, поэтому в вашей таблице Product у вас есть отношение имеет много, но в ProductTagTable у вас есть отношение к связи, потому что productTag принадлежит ProductTable.

Для лучших вариантов, Вы можете использовать команду lb model , которая спросит вас, как вы хотите установить отношения и какое имя вы хотите использовать для foreignKey.

Спасибо.

...