Ошибка при возврате модели после обновления отношения «многие ко многим» в запросе API Laravel - PullRequest
0 голосов
/ 06 ноября 2019

Я настраиваю Laravel API и имею дело с моделью User.

Она имеет два отношения: - Отношение один-ко-многим: Роль - Отношение многие-ко-многим: Команды

Когда я обновляю одного пользователя через запрос API, он не отправляет обратно обновленное отношение «многие ко многим».

Это функция обновления прямо сейчас:

public function update(Request $request, $id)
{
    $user = User::with('role', 'teams')->findOrFail($id);
    $user->update($request->all());
    if ($request->teams) {
        $user->teams()->sync($request->teams);
    }
    if ($request->role) {
        $user->role()->associate(Role::findOrFail($request->role));
    }
    $user->save();
    return response()->json($user, 200);
}

Я отправляю объект User:

User {
  email: "admin@admin.com"
  first_name: "Admin"
  teams: [4,5,6]
  ...
}

Он корректно обновляется в базе данных, но возвращаемый объект из запроса не содержит значения в массиве groups:

User {
  email: "admin@admin.com"
  first_name: "Admin"
  teams: []
  ...
}
...