Я пытаюсь добавить данные, но получаю сообщение об ошибке. Вызов функции-члена users () для null, все работало нормально. Не знаю, что не так в моем коде. Я даже не изменил свой код.
Я знаю ошибку, когда пользователь не вошел в систему, но мой пользователь также вошел в систему. Я тестирую API с помощью почтальона.
Вот мой код контроллера:
DB::beginTransaction();
try{
$request->request->add(['created_by' => Auth::user()->id]);
$group = Group::where('name', $request->get('name'))->first();
$group->users()->attach($request->get('group_members', [])); // error on this line users()
DB::commit();
return response([
'status' => true,
'message' => 'Group added',
], 200);
} catch(\Exception $ex) {
DB::rollback();
return response([
'status' => false,
'message' => __('messages.validation_errors'),
'errors' => $ex->getMessage(),
], 500);
}
Мои маршруты:
Route::middleware('jwt.auth')->group(function() {
Route::post('add_group', "GroupController@addGroup");
});
Модель моей группы:
public function users()
{
return $this->belongsToMany('App\Models\Users\User', 'group_members');
}
Моя пользовательская модель:
public function groups()
{
return $this->belongsToMany('App\Group', 'group_members');
}
Запрос моего тела почтальона:
{
"name": "Steve",
"group_members": [4,6]
}
как я сказал, ничего не изменилось в коде, он работал нормально день назад.
Ваша помощь будет высоко оценена. Спасибо