項目背景:
- back-end:ASP.NET Core WebAPI
- front-end:Vue(+vue-router +vuex +axios)(webpack)(json-server + mockjs)
mock數據部分用的 json-server + mockjs
mockjs:通過循環創建大量數據,使用Random方法,產生出隨機的數據,日期,郵箱,名字(中英),字母單詞段落等
json-server:輕松啟動一個 RESTful 風格的 API 服務。
↓ 網上找到的不錯的相關介紹博文:
用JSON-server模擬REST API(三) 進階使用
json-server的關系圖譜詳解(Relationships) 這篇着重舉例說明了關系圖譜(Relationships)
關於【關系圖譜】,讀完有個疑問,就是,如果一個表的 id 關聯在2個表以上里,
那能都同時取出來嗎( _embed 取子數據集 )
本文就是記錄這一點補充的:
答案是:可以的。
http://localhost:3000/projects/1?_embed=WorkItems
可以取 id=1 的 project 及 相關的 WorkItems
{ id: 1, name: "xxx", WorkItems: [ { id: 1, name: "abc", projectId: 1 }, { id: 6, name: "def", projectId: 1 } ] }
http://localhost:3000/projects/1?_embed=Members
可以取 id=1 的 project 及 相關的 Members
{ id: 1, name: "xxx", Members: [ { id: 2, name: "aaa", projectId: 1 }, { id: 7, name: "bbb", projectId: 1 } ] }
http://localhost:3000/projects/1?embed=WorkItems&embed=Members
可以取 id=1 的 project 及 相關的 WorkItems 和 Members
{ id: 1, name: "xxx", WorkItems: [ { id: 1, name: "abc", projectId: 1 }, { id: 6, name: "def", projectId: 1 } ], Members: [ { id: 2, name: "aaa", projectId: 1 }, { id: 7, name: "bbb", projectId: 1 } ] }