Laravel Api(新手需要帮助)

时间:2016-07-26 07:36:55

标签: php laravel

我想知道这是否可行,想象一下,当我呼叫所有用户时,我在laravel api上有这个回复,我想知道是否可以只调用其中一个并显示与该用户相关的信息public/api/users/1

我找不到要搜索回复的字样,如果它是转发,那就很抱歉。

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

通过public/api/users/1致电给我一个空白页面,该页面应该是用户的id权利?

2 个答案:

答案 0 :(得分:1)

作为一个简单的实现,你可以添加到routes.php文件:

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

从Laravel 5.2开始,框架也支持model binding

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

编辑:

仅输出某些属性:

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

答案 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');
});