2017-04-26 16 views
0

職業、技能、指定、場所などとの関係を持つユーザーテーブルがあります。このコマンドで得ることができる単純なユーザー情報app\users::find(1)とそのスキル情報はapp\user::find(1)->skillです。 1つのコマンドで特定のユーザーに関する全般、職業、スキルなどの情報をすべて取得するにはどうすればよいですか?例についてはLaravel:2つのテーブルのデータを結合する

はlocalhost: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

関連する問題