«Попытка получить свойство« id »необъекта» Laravel - Auth :: id () команда - PullRequest
0 голосов
/ 01 октября 2019

Это пример моего кода из DatatablesController.php

$id = Auth::user()->id;
   $data = Cdr::
      select('src','dst','start','duration','billsec','disposition','uniqueid')
      ->where('billsec','>', '0')
      ->where('start','>=',Carbon::today())
      ->join('alt_portal.numbers', 'nr','=','dst') 
      ->where('alt_portal.numbers.user_id','=',$id)
      ->get(); 

Я делаю проект Laravel, в котором будет много пользователей. И у каждого пользователя есть свой номер или номера. По сути, я пытаюсь выбрать из базы данных только те номера, которые принадлежат конкретному пользователю, другими словами, для входа в систему идентификатор пользователя, потому что пользователь может видеть только свои исходящие и входящие звонки в таблице.

И когда я пытаюсь сделать это:

$id = Auth::user()->id;
...
->where('alt_portal.numbers.user_id','=',$id)

Я получаю сообщение в браузере, которое соответствует ошибке:

сообщение: «Попыткаполучить свойство 'id' не-объекта "

Кто-нибудь знает, как исправить эту проблему?

PS Я новичок в Laravel.

1 Ответ

0 голосов
/ 02 октября 2019

Дело закрыто. Спасибо, ребята, за ваши ответы! Мне удалось решить мою проблему.

Я нашел решение здесь: ОТВЕТ Но я добавил стек непосредственно в промежуточное ПО, а не в группу "web".

Это мой/Http/kernel.php файл:

protected $middleware = [
        \Illuminate\Session\Middleware\StartSession::class,
        \App\Http\Middleware\TrustProxies::class,
        \App\Http\Middleware\CheckForMaintenanceMode::class,
        \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
        \App\Http\Middleware\TrimStrings::class,
        \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
        \App\Http\Middleware\EncryptCookies::class,
        \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \App\Http\Middleware\VerifyCsrfToken::class
    ];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...