当我按删除时,它会删除数据库中属于当前用户的最后一个慈善机构。
查看(删除按钮):
<a href="#"> <button class="btn btn-danger pull-right btnPopover" data-
toggle="popover" data-placement="top"> Remove </button> </a>
视图(被调用的JS):
function ConfirmDelete()
{
true;
}
$(document).ready(function()
{
$('.btnPopover').popover(
{
html: 'true',
title: '<strong> Are you sure you want to Remove? </strong>',
content: '<form style="display: inline;" action="{{
URL::to('remove', array($favourite->id)) }} "> <button class = "btn
btn-success glyphicon glyphicon-ok" onclick="return
ConfirmDelete()"> Yes </button> </form> <button class = "btn btn-
danger glyphicon glyphicon-remove"> No </button> '
});
$('.btnPopover').on('click', function (e)
{
$('.btnPopover').not(this).popover('hide');
});
路线:
Route::get('remove/{id}', 'HomeController@removeFavourite');
Controller(removeFavourite函数):
public function removeFavourite($id)
{
Favourites::where('id', $id)->delete();
Session::flash('flash_message', 'Removed successfully!');
return back();
}
奇怪的是,我在应用程序的另一部分使用完全相同的函数和JS调用,它工作正常!
问题是,它删除了数据库中属于该用户的最后一条记录。
由于
答案 0 :(得分:1)
我不确切地知道你的代码是什么样的,但问题是你的JS只对循环的最后一次迭代有效,这听起来像你正在经历的那样。
要修复它,您可以在弹出窗口按钮内移动表单,以便获得正确的表单链接:
示例(移动表单):
<a href="#"> <button class="btn btn-danger pull-right btnPopover" data-toggle="popover" data-placement="top" data-content='<form style="display: inline;" action="{{ URL::to('remove', array($favourite->id)) }} "> <button class = "btn btn-success glyphicon glyphicon-ok" onclick="return ConfirmDelete()"> Yes </button> </form> <button class = "btn btn-danger glyphicon glyphicon-remove"> No </button> '> Remove </button> </a>
JS:
$(document).ready(function()
{
$('.btnPopover').popover(
{
html: 'true',
title: '<strong> Are you sure you want to Remove? </strong>',
});
$('.btnPopover').on('click', function (e)
{
$('.btnPopover').not(this).popover('hide');
});
....
如果您可以从弹出框中访问父按钮,这可能会更清晰,但我无法在API中找到一种方法。
答案 1 :(得分:0)
检查您在程序中检索的$ id(我假设在查找$ id的问题中缺少某些代码)是您要删除的。
答案 2 :(得分:-1)
级官方文档说使用以下代码删除模型:
$flight = App\Flight::find(1);
$flight->delete();
查找检索单个模型,并返回集合,这可能是问题所在。
另外,请确保您传递了需要删除的收藏夹的特定$id
,否则您将始终删除循环中的最后一个$id
。