отношения экземпляра класса - Laravel / Eloquent - PullRequest
0 голосов
/ 06 сентября 2018

Я работаю над API для веб-сайта, где у меня есть таблицы блогов и категорий

каждый блог относится к категории и в каждой категории есть много блогов OK

Итак, я создал BlogController и настроил маршруты для доступа к соответствующей функции.

/api/blog/ URL через GET перенаправляется в индексную функцию моего контроллера, и эта функция выглядит следующим образом:

public function index()
{
    $blog = Blog::with('category')->get();
    return response()->json($blog, 200);
}

, который возвращает это (правильно)

[
    {
        "id": 1,
        "title": "title from blog",
        "body": "texto do meu blog",
        "category_id": 1,
        "created_at": "2018-09-05 21:08:21",
        "updated_at": "2018-09-05 21:08:21",
        "category": {
            "id": 1,
            "name": "Web development",
            "created_at": "2018-09-05 20:54:54",
            "updated_at": "2018-09-05 20:54:54"
        }
    }
]

/api/blog/ URL через POST перенаправляется в функцию сохранения моего контроллера, чтобы сохранить данные в базе данных, и функция выглядит следующим образом:

public function store(Request $request)
{
    $blog = new Blog($request->all());
    $saved = $blog->save();

    if ($saved) {
        return response()->json($blog, 200);
    }

    return response()->json([
        'message' => '400 Bad Request'
    ], 400);
}

затем возвращает (отсутствует информация о категории)

{
    "title": "title from blog",
    "body": "texto do meu blog",
    "category_id": "2",
    "updated_at": "2018-09-06 00:56:13",
    "created_at": "2018-09-06 00:56:13",
    "id": 12
}

затем отсутствует информация о категории

после сохранения данных в базе данных, мне нужно, чтобы они пришли в ответ на информацию о категории для этого конкретного блога

кому помочь?

1 Ответ

0 голосов
/ 06 сентября 2018

Я могу с

$blog->load('category');
...