2017-04-26 29 views
0

我有一個與專業,技能,名稱,位置等有關係的用戶表。我可以通過此命令獲得簡單用戶信息app\users::find(1)及其技能信息,例如app\user::find(1)->skill。我如何通過一個命令獲取關於特定用戶的一般信息,職業信息和技能?Laravel:合併來自兩個表的數據

例如:

本地主機:8000 /用戶/ 1

這個環節應該給我JSON結果如下圖所示:

{ 
    "id": 0, 
    "name": "string", 
    "email": "string", 
    "gender": "string", 
    "age": 0, 
    "mobile_number": "string", 
    "company_name": "string", 
    "verification_status": 0, 
    "image_url": "string", 
    "joining_date": "2017-04-26T12:34:34.501Z", 
    "message": "string", 
    "profession": { 
    "id": 0, 
    "name": "string" 
    }, 
    "designation": { 
    "id": 0, 
    "name": "string" 
    }, 
    "location": { 
    "id": 0, 
    "longitude": 0, 
    "latitude": 0, 
    "address": "string", 
    "city": "string", 
    "country": "string" 
    }, 
    "interests": [ 
    { 
     "id": 0, 
     "name": "string", 
     "custom": "string" 
    } 
    ], 
    "skills": [ 
    { 
     "id": 0, 
     "name": "string", 
     "custom": "string" 
    } 
    ] 
} 

回答

1

您可以加載所有關係該型號爲using eager loading,然後serialize that object to a json string

像這樣:

app\user::where('id', 1)->with(['profession', 'designation', '...'])->first()->toJson(); 
+0

沒錯,我一直在尋找,謝謝 – MTA

+0

很高興我能幫忙。如果這解決了您的問題,請考慮將此答案標記爲解決方案,以便其他用戶在遇到同樣問題時可能會找到答案。 – Jerodev

相關問題