数据库模型将空数据返回到Laravel刀片,显然,我缺少什么



当我将DB数据返回到blade laravel时,我得到了一个空表。

Controller.php

public function showreport($id) 
{   
$data = Cases::find($id);
return view('report',['reports'=>$data]);
} 

报告。刀片

@foreach($reports as $report)       
<tr>
<td>{{$report['id']}}</td>
<td>{{$report['first_name']}} {{$report['last_name']}}</td>
<td>{{$report['cnic']}}</td>
<td>{{$report['area_code']}} {{$report['phone']}}</td>
<td>{{$report['first_def']}} {{$report['last_def']}}</td>
<td>{{$report['case_type']}}</td>
</tr>
@endforeach

Route.php

Route::get('history/report/{id}', [AppHttpControllersCaseController::class, 'showreport'])->name('user')->middleware('auth');

似乎无法解决该问题。它会返回$data变量fine,但不会在表中显示该行。

find()方法对于使用其主ID值从表中获取单个记录非常有用。所以它只返回一条记录,而不是一个数组。如果你想获得一个记录数组,你可以使用:

$data = Cases::query()->where('id', $id)->get();

这在逻辑上可能是错误的。因为虽然你总是需要一张唱片,但你为什么要用一张桌子呢?

IGP的建议有效。

在控制器中,我将$data=Cases::find($id(更改为$data=CCases::where('id',$id(->get((

最新更新