laravel 添加嵌套循环后更改了 id 值
laravel id value changed after adding a nested loop
我用下面的代码来显示用户的角色
但是,当我想编辑或删除它时,它会引导我找到已删除的 ID 编号 2/3 它 return 即使我用 foreach
Attempt to read property "id" on null (View: C:\laravel\gauto\resources\views\dashboard\user\edit.blade.php)!
更改 for else 也是一样
当我删除嵌套的 foreach
循环一切恢复正常
提前谢谢你
@forelse($users as $item)
<tr>
<td>{{ $loop->iteration }}</td>
<td>{{ $item->name }}</td>
<td>{{ $item->email }}</td>
<td>
@if($item->email_verified_at)
{{ "verified" }}
@else
{{ "not verified" }}
@endif
</td>
<td>
@foreach($item->roles as $item)
{{ $item['name'] }}
@endforeach
</td>
<td>
<a href="{{ route('user.edit', $item->id) }}">Edit</a>
<form action="{{ route('user.destroy', $item->id) }}" method="POST">
@csrf
@method('delete')
<button onclick="return confirm('Are you sure ??')" type="submit">Delete</button>
</form>
</td>
</tr>
@empty
<tr>
blank data
</tr>
@endforelse
您的用户也保存在 $item 中,并且在循环中您每次都为 $item 分配不同的值。
尝试将代码更改为
<td>
@foreach($item->roles as $role)
{{ $role['name'] }}
@endforeach
</td>
我用下面的代码来显示用户的角色
但是,当我想编辑或删除它时,它会引导我找到已删除的 ID 编号 2/3 它 return 即使我用 foreach
Attempt to read property "id" on null (View: C:\laravel\gauto\resources\views\dashboard\user\edit.blade.php)!
更改 for else 也是一样
当我删除嵌套的 foreach
循环一切恢复正常
提前谢谢你
@forelse($users as $item)
<tr>
<td>{{ $loop->iteration }}</td>
<td>{{ $item->name }}</td>
<td>{{ $item->email }}</td>
<td>
@if($item->email_verified_at)
{{ "verified" }}
@else
{{ "not verified" }}
@endif
</td>
<td>
@foreach($item->roles as $item)
{{ $item['name'] }}
@endforeach
</td>
<td>
<a href="{{ route('user.edit', $item->id) }}">Edit</a>
<form action="{{ route('user.destroy', $item->id) }}" method="POST">
@csrf
@method('delete')
<button onclick="return confirm('Are you sure ??')" type="submit">Delete</button>
</form>
</td>
</tr>
@empty
<tr>
blank data
</tr>
@endforelse
您的用户也保存在 $item 中,并且在循环中您每次都为 $item 分配不同的值。
尝试将代码更改为
<td>
@foreach($item->roles as $role)
{{ $role['name'] }}
@endforeach
</td>