2016-08-24 4 views
1

У меня есть модель продавца. Это базовый класс User.трехслойная петля модель отношение

У меня есть модель Sku, которая принадлежит продавцу. Продавец имеет много отношений с Sku.

У меня есть лицензионная модель, которая принадлежит Sku и Sku hasMany отношения с лицензией.

Если бы я был в MySql db, я бы поставил seller_id в таблицу Sku и сделал sku (sku string в таблице Sku) и seller_id вместе уникальными. Потому что у каждого продавца может быть тот же Ску, но у одного Продавца не может быть более одного ску.

В то же время я бы поставил seller_id и sku_id в таблице License, чтобы получить все лицензии для Продавца.

Назад к моим петлевым моделям. Я думаю, что если у Продавца есть отношение к Лицензии и Лицензии принадлежит Продавцу, было бы так же, как и мои мысли MySql?

+0

Предоставление некоторого кода может помочь –

+0

@ EbrahimPasbani нет кода. Это только моделирование. –

+1

Я имею в виду такое моделирование, как json-файлы. В любом случае, когда у вас есть отношение от Продавца к Sku и Sku, имеет отношение к Лицензии, нет необходимости устанавливать связь с Продавцом для лицензии напрямую. –

ответ

0

Loopback не поддерживает JOIN.

Так вопрос

В то же время я бы поставил seller_id и sku_id в таблице лицензий, что я могу получить все лицензии на продавца.

in lookpack, модель License только имеет один foreignId skuId.

seller.skus({include: licenses}) возвратит вам лицензию продавца, в виде:

[ 
    sku_1: [ 
     license_1, 
     license_2, 
     ... 
    ], 
    sku_2: [ 
     license_1, 
     license_3, 
     ... 
    ], 
    ... 
] 

Некоторых ссылок дока, вы можете быть заинтересованы в:

Как запросить связанные модели в шлейфе: http://loopback.io/doc/en/lb2/Querying-related-models.html

Как для использования фильтра: http://loopback.io/doc/en/lb2/Include-filter.html

Смежные вопросы