2017-09-01 66 views
1

我想引用不同的模式(如這裏discribed:https://loopback.io/doc/en/lb2/Embedded-models-and-relations.html),但由嵌套 ID:迴環referencesMany嵌套的外鍵

{ 
"name" : "person", 
... 
    "relations": { 
    "cars": { 
     "type": "referencesMany", 
     "model": "car", 
     "foreignKey": "cars.id" 
    } 
} 

人JSON實際上是這樣的:

{ 
    ... 
    cars: [{"id": 1, "name": "car1"}, ...] 
} 

和車模將是全車詳細信息

我是否必須編寫自己的遠程方法來做到這一點?

回答

0

Yosh DaafVader,

我來到翻過這一問題也並花時間找到一個解決方案^^但實際上你就必須與你的目標關係屬性內的參數選項玩。 documentation指出應如何定義關係(確保loopback cli不包含在版本3.x中,但是使用嵌入和引用的方式)。

在你的人的模型,你必須改變FOREIGNKEY,並添加以下選項能夠只用ID來引用汽車。

{ 
"name" : "person", 
... 
    "relations": { 
    "cars": { 
     "type": "referencesMany", 
     "model": "car", 
     "foreignKey": "", 
     "options": { 
     "validate": true, 
     "forceId": true 
     } 
    } 
} 

現在,您將能夠在資源管理器中看到新的路線,以添加,移除並查看屬於目標人的汽車。

[編輯]

  1. FOREIGNKEY應是空的,爲了能夠在汽車的名單正確添加項目,或者你可以測試並提供有關它的一些反饋
  2. 驗證選項確保在您的數據庫中存在ID
  3. forceId選項將確保只接受ID作爲一個參數

[/編輯]

希望這將有助於:)

乾杯