【发布时间】:2021-06-04 12:20:47
【问题描述】:
我在使用 PHP 8 的 Laravel 8 上一直遇到这个错误。我像这样从视图中获取 id:
<button type="submit">
<a href="{{route('employees.payslip', $employee->id)}}" class="text-green-600 hover:text-green-900">Payslip</a>
</button>
然后像这样转到 web.php:
Route::get('employees/{id}/payslip', ['App\Http\Controllers\PrintController', 'print'])->name('employees.payslip');
然后像这样进入打印功能:
public function print($id)
{
$employees = Employees::findOrFail($id);
$teams = Team::all();
return view('employees.payslip',compact('employees', 'teams'));
}
当我删除返回视图行并将其替换为:
dd($employees);
它给了我正确的信息,但是当我保持线路时:
return view('employees.payslip',compact('employees', 'teams'));
并将视图“employees.payslip”发送给它:它给了我错误:有人有什么想法吗?
@forelse($employees as $employee)
<tr>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
{{$employee->name}}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
{{$employee->surname}}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
{{$employee->address}}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
{{$employee->phone}}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
{{$employee->role}}
</td>
<td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
{{$employee->absent}}
</td>
</tr>
@empty
<td>
No Information to Display
</td>
@endforelse
【问题讨论】:
-
$employees是单个模型,而不是员工的集合。您当前正在尝试遍历单个 Employee 的属性。删除循环,它应该可以工作