2016-07-26 12 views
0

私はすべてのユーザーに電話するとlaravel apiでこの返信があると想像してみると、そのうちの1つを呼び出して関連する情報を表示することは可能でしょうか? public/api/users/1Laravel Api(初心者が助けを必要とする)

のようなそのユーザは、私はそれのための返信、その場合は再投稿とても残念に検索する単語を見つけることができません。ただpublic/api/users/1を通じて呼び出す

{ 
    "id": 1, 
    "nome": "a", 
    "BI": 123, 
    "morada": "1245" 
}, 
{ 
    "id": 2, 
    "nome": "b", 
    "BI": 123456, 
    "morada": "1p231p2oi3" 
} 

は私のユーザー権利のidことになってしまう空白のページを与えますか?その簡単な実装として

答えて

1

、あなたはroutes.phpのファイルに追加することができます。Laravel 5.2フレームワークのとおり

Route::get("api/users/{id}", function($id) { 
    return App\User::find($id); 
}); 

model bindingをサポートしています。

Route::get('api/users/{user}', function (App\User $user) { 
    return $user; 
}); 

EDIT:

Outputing特定の属性のみ:

Route::get('api/users/{user}', function (App\User $user) { 
    return response()->json([ 
     "id" => (int) $user->id, 
     "name" => $user->name 
    ]); 
}); 
+1

モデルの生の出力を返すことをおすすめします。表示したいフィールドに書式を設定することをお勧めします。 – ajtrichards

+1

ええ、それは簡単な解決策でした。あなたはまた、コントローラーの中に入れ、フラク​​タルなどを使用することができます... –

1

私は以下のようなものを使用することをお勧めします。

Route::get('api/users/{user}', function ($id) { 
    $user = App\User::first($id); 

    $content = [ 
     'id' => $user->id, 
     'nome' => $user->nome, 
     'BI' => $user->BI, 
     'morada' => $user->morada 
    ]; 

    return response($content, 200) 
        ->header('Content-Type', 'application/json'); 
}); 
関連する問題