Неопределенное свойство: stdClass - LARAVEL - PullRequest
0 голосов
/ 19 января 2019

Я пытаюсь создать страницу администратора, где владелец магазина может проверить информацию от пользователей, которые подписались на сайте, но я всегда получаю ошибку Undefined property: stdClass::$name

Вот функция контроллера:

public function listar(){
    $users = DB::table('users')->select('name')->orderBy('updated_at', 'desc')->get();
    $users = DB::table('users')->select('email')->orderBy('updated_at', 'desc')->get();
    $users = DB::table('users')->select('phone')->orderBy('updated_at', 'desc')->get(); 
}

Вот часть формы:

@foreach ($users as $u)
    <tr>
        <td>{{ $u->name }}</td>
        <td>{{ $u->email }}</td>
        <td>{{ $u->phone}}</td>
    </tr>
@endforeach

Я просто хочу, чтобы он мог показывать эту информацию из базы данных.

Ответы [ 2 ]

0 голосов
/ 23 января 2019
public function listar(){
   $users = //Your user model class ::all();
   return $users;
}

Затем попробуйте просмотреть

@foreach ($users as $u)
<tr>
    <td>{{ $u->name }}</td>
    <td>{{ $u->email }}</td>
    <td>{{ $u->phone}}</td>
</tr>

@ endforeach

0 голосов
/ 19 января 2019

Вы фактически выполняете запрос три раза, каждый раз перезаписывая переменную $users.Вы получаете последний, и у него нет свойства name, потому что вы выбрали только phone.Вы должны запустить его только один раз и указать все нужные столбцы в select().

public function listar(){
    $users = DB::table('users')->select('name', 'email', 'phone')
                 ->orderBy('updated_at', 'desc')->get();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...