2016-08-05 4 views
1

Правильная ли петлевой конвенции определить отношения как embedsOne в файле модели JSON как это:для определения модели отношения

{ 
    "name": "Customer", 
    "base": "PersistedModel", 
    "idInjection": true, 
    "properties": { 
    "name": { 
     "type": "string" 
    } 
    }, 
    "relations": { 
    "address": { 
     "type": "embedsOne", 
     "model": "Address", 
     "property": "billingAddress", 
    } 
    } 
} 

или файл JS для модели, например:

Customer.embedsOne(Address, { 
    as: 'address', // default to the relation name - address 
    property: 'billingAddress' // default to addressItem 
}); 

ответ

2

Отказ от ответственности: Я технический руководитель проекта LoopBack.

Рекомендуемый способ - определить ваши отношения модели с помощью файла модели JSON, как показано в первом примере.

Основная причина в том, что наш инструмент (от yo loopback до apic edit) может читать, понимать и даже редактировать метаданные, указанные в файлах JSON, но не может анализировать/редактировать (произвольный) исходный код javascript.

Под капотом метаданные отношения кодов, интерпретируемые с помощью модели JSON, обрабатывают API как Customer.embedsOne, поэтому конечный результат тот же.

1

Если вы не измените структуру модели, первая из них предпочтительнее.

И второй для симметричных. Также в динамических структурах вам необходимо использовать второй