Я хочу получить идентификатор пользователя в контроллере laravel 5.3 с Auth :: user () -> id, но он создает ошибку

Я создал таблицу points и пользователи будут дебетовать кредитные счета. структура похожа на следующую. id userid p_add p_less description created_at updated_at 1 9 3000 0 purchased -time- -time- 2 9 0 300 expend -time- -time-

и я использую следующий код контроллера.

 public function account_page(){ $points = Points::select(DB::raw("sum(p_add)-sum(p_less) as Total"))->where('user_id', 9)->first(); return view('mop.account-page', array('points'=>$points)); } 

поэтому на странице просмотра, названной как результат учетной записи, отображается правильно, как я хочу. Но этот запрос получает user_id как статическое значение. Я хочу динамически. Поэтому, если я помещаю Auth::user()->id вместо 9, ничего не отображается, даже я использовал use Auth; наверху. Помогите мне получить чистые точки из базы данных с динамическим user_id в запросе.

Во-первых, давайте надеемся, что у вас есть таблица пользователей с идентификатором первичного ключа и модальным, связанным с ним в вашем проекте. Попробуйте use Illuminate\Support\Facades\Auth; тогда

 // This will check if user is logged in.. if (Auth::check()) { $user_id = Auth::user()->id; $points = Points::select(DB::raw("sum(p_add)-sum(p_less) as Total"))->where('user_id', $user_id)->first(); return view('mop.account-page', array('points'=>$points)); } else { return redirect('somewhere'); // or return anything you want }