Невозможно использовать объект типа stdClass в качестве массива в laravel 5.4 - PullRequest
0 голосов
/ 15 ноября 2018

Это моя функция контроллера

public function plist(){
    $plists = DB::table('panchayaths')->get(); 
    return view('webapp.panchayath list', ['plists' => $plists]);;       
}

Это мой взгляд

@foreach ($plists as $plist) 
<td> {{$plist['id']}}</td>
<td> {{$plist['pname']}}</td>
<td> {{$plist['total_ward']}}</td>
@endforeach

Ответы [ 2 ]

0 голосов
/ 16 ноября 2018

в контроллере:

public function plist()
{
    $plists = DB::table('panchayaths')->get()->toArray(); 
    return view('webapp.panchayath list', ['plists' => $plists]);
}

ИЛИ, если вы используете Eloquent ORM:

public function plist()
{
    $plists = Panchayaths::all(); 
    return view('webapp.panchayath list', ['plists' => $plists]);
}

в поле зрения:

@foreach ($plists as $plist) 
    <tr>
        <td> {{$plist['id']}}</td>
        <td> {{$plist['pname']}}</td>
        <td> {{$plist['total_ward']}}</td>
    </tr>
@endforeach

ИЛИ:

@foreach ($plists as $plist) 
    <tr>
        <td>{!! $plist->id !!}</td>
        <td>{!! $plist->pname !!}</td>
        <td>{!! $plist->total_ward !!}}</td>
    <tr>
@endforeach
0 голосов
/ 15 ноября 2018

вы пробовали $ plist-> id.Ответом get является объект, а не ассоциативный массив. Если вы хотите использовать его в качестве массива в своем блейде, добавьте -> toArray () после get ().

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