У меня есть наблюдатель, настроенный для сохранения экземпляра user
. Однако экземпляр модели, переданный в метод наблюдателя, состоит из данных до вставки в базу данных. Событие запускается при запуске мутации GraphQL через Lighthouse. Если я вручную установлю группы пользователей и сохраню их, наблюдатель будет работать так, как ожидалось.
Вот пример, который устанавливает группы пользователей:
mutation {
updateUser(input: {
id: 1
groups: {
sync: [1]
}
}) {
groups { id }
}
}
В настоящее время мой UserObserver::saved
выглядит следующим образом:
public function saved(User $user)
{
// Shows the groups prior to the update
dump($user->groups->toArray());
// Even a raw query doesn't get the updated groups
dump(DB::select('select * from group_user where userId=1'));
}
Используется Laravel 5.8.35 и Lighthouse 4.6
.