Как исправить «Попытка получить свойство необъекта» - PullRequest
0 голосов
/ 08 июля 2019

Пожалуйста, помогите проверить код, чтобы увидеть, где есть ошибка, так как я не кодер, а просто использую приложение от другого разработчика

            <div class="bs-example widget-shadow table-responsive" data-example-id="hoverable-table"> 
                <table class="table table-hover"> 
                    <thead> 
                        <tr> 
                            <th>ID</th> 
                            <th>Client name</th>
                            <th>Amount</th>
                            <th>Payment mode</th>
                            <th>Receiver's email</th>
                            <th>Status</th> 
                            <th>Date created</th>
                            <th>Option</th>
                        </tr> 
                    </thead> 
                    <tbody> 
                        @foreach($withdrawals as $deposit)
                        <tr> 
                            <th scope="row">{{$deposit->id}}</th>
                            <td>{{$deposit->duser->name}}</td>
                             <td>{{$deposit->amount}}</td> 
                             <td>{{$deposit->payment_mode}}</td> 
                             <td>{{$deposit->duser->email}}</td> 
                             <td>{{$deposit->status}}</td> 
                             <td>{{$deposit->created_at}}</td> 
                             <td> <a class="btn btn-default" href="{{ url('dashboard/pwithdrawal') }}/{{$deposit->id}}">Process</a></td> 
                        </tr> 
                        @endforeach

1 Ответ

1 голос
/ 08 июля 2019

Проблема в {{$deposit->duser->name}} и {$deposit->duser->email}}. Каждый вывод должен иметь действительный идентификатор пользователя. Этот идентификатор пользователя будет сопоставлен с таблицей пользователей, а имя и адрес электронной почты этого пользователя будут показаны в блейде.

Что происходит, так это то, что один или несколько $ Deposit имеют неверный идентификатор пользователя. Таким образом, лезвие пытается найти в таблице, чтобы получить имя и адрес электронной почты. Но это не найти его. По сути, он пытается получить значение имени нулевого объекта и завершает работу приложения.

Вы можете попробовать проверить, имеет ли duser значение NULL, используя следующий код,

@foreach($withdrawals as $deposit)

    @if(!is_null($deposit->duser))

     <tr> 
      <th scope="row">{{$deposit->id}}</th>
      <td>{{$deposit->duser->name}}</td>
      <td>{{$deposit->amount}}</td> 
      <td>{{$deposit->payment_mode}}</td> 
      <td>{{$deposit->duser->email}}</td> 
      <td>{{$deposit->status}}</td> 
      <td>{{$deposit->created_at}}</td> 
      <td> <a class="btn btn-default" href="{{ url('dashboard/pwithdrawal') }}/{{$deposit->id}}">Process</a></td> 
                        </tr> 

    @endif
@endforeach
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...