您好,我正在尝试在我的用户表中使用 Laravel 中的模式进行删除确认。我注意到删除按钮正在工作,但删除按钮总是删除表中的最后一个条目,并且在确认中我放置了一些,<p>Are you sure you want to delete {{$row->name}}</p> 但那里的名称始终来自最后一个条目。这是我的整个模态代码
<!-- Delete Modal -->
<div class="modal fade" id="userDelete" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Delete User</h5>
</div>
<div class="modal-body">
<p>Are you sure you want to delete {{$row->name}}</p>
</div>
<div class="modal-footer">
{!!Form::open(['action' => ['UserController@destroy', $row->id], 'method' => 'POST','class'=>'pull-right'])!!}
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
{{Form::submit('Delete',['class'=>'btn btn-danger'])}}
{{Form::hidden('_method','DELETE')}}
{!!Form::close()!!}
</div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这是我的销毁控制器代码
public function destroy($id)
{
$users = User::find($id);
if(auth()->user()->userType =="admin")
{
$users->delete();
}
else
{
return redirect('/users')->with('error', 'Admin is only authorized to delete users');
}
return redirect('/users')->with('success', 'User Removed!');
}
Run Code Online (Sandbox Code Playgroud)
这是我的表体代码
@foreach ($users as $row)
<tbody id="myTable">
<tr>
<td>{{$row->id}}</td>
<td>{{$row->name}}</td>
<td>{{$row->email}}</td>
<td>{{$row->created_at}}</td>
<td>{{$row->userType}}</td>
<td><a href="" class="btn btn-success">Validate</a>
<button class="btn btn-danger" data-toggle="modal" data-
target="#userDelete">Delete</button>
</td>
</tr>
</tbody>
@endforeach
Run Code Online (Sandbox Code Playgroud)
我该如何修复它?
你的模态总是排在最后,id因为,
重新格式化您的代码,如下所示。
在表体代码中:更新按钮数据目标
@foreach ($users as $row)
<tbody id="myTable">
<tr>
<td>{{$row->id}}</td>
...
<td><a href="" class="btn btn-success">Validate</a>
<button class="btn btn-danger" data-toggle="modal"
data-target="#userDelete_{{$row->id}}">
Delete
</button>
</td>
</tr>
</tbody>
@endforeach
Run Code Online (Sandbox Code Playgroud)
上面的, 现在将根据按钮点击 data-target="#userDelete_{{$row->id}}"识别不同的模态 id,例如userDelete_1,等userDelete_2
foreach现在在表格后面的循环内编写模态代码,如下所示:
@foreach ($users as $row)
<tbody id="myTable>
...
</tbody>
<!-- Delete Modal -->
<div class="modal fade" id="userDelete_{{$row->id}}" tabindex="-1"
arialabelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Delete User</h5>
</div>
<div class="modal-body">
<p>Are you sure you want to delete {{$row->name}}</p>
</div>
<div class="modal-footer">
{!!Form::open(['action' => ['UserController@destroy', $row->id], 'method' => 'POST','class'=>'pull-right'])!!}
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
{{Form::submit('Delete',['class'=>'btn btn-danger'])}}
{{Form::hidden('_method','DELETE')}}
{!!Form::close()!!}
</div>
</div>
</div>
</div>
@endforeach
Run Code Online (Sandbox Code Playgroud)
现在,如果你的路线路径和形式没问题,我想你的问题就会解决。
| 归档时间: |
|
| 查看次数: |
716 次 |
| 最近记录: |