提问者:小点点

如何定义链接到Laravel 4中destroy()函数的路由?


我在我的路由中定义了这样的资源:

    Route::resource('shops', 'shopsController');

我需要创建一个链接来删除一个项目

<a class="btn btn-xs btn-danger" href="{{ URL::to('shops/'. $row->id . '/destroy') }}" > </a>

但此URL要求我定义一个新路由,如下所示:

Route::get('shops/{id}/destroy', 'shopsController@destroy');

那么,我如何强制URL通过默认路径,通过其资源,获得销毁功能??

我试过了

href="{{ route('shops.destroy', $row->id ) }}" data-method="delete" 

但是我将我重定向到show()!!!!


共2个答案

匿名用户

您不能通过锚标签href attr删除用户,您需要使用表单或Ajax删除它。

   {{ Form::open(array('url' => 'shops/'. $row->id)) }}
                    {{ Form::hidden('_method', 'DELETE') }}
                    {{ Form::submit('Delete this User', array('class' => 'btn btn-warning')) }}
                {{ Form::close() }}

这里有一个类似的问题

最新消息

希望这对你有帮助。

您可以通过$row-

 <a class="btn btn-xs btn-danger" id="{{$row->Id}}" onclick="delete_user(this.id) return false;" href="#" rel="nofollow" >Delete this entry</a>

然后使用下面的脚本使用Destory方法。

function delete_user(Id) {
var result = confirm("Want to delete?");
if (result==true) {
        $.ajax({
            url:'http://localhost:81/laravel/myapps/public/shops/'+Id,
            type:"Post",
            data: {'_method':'delete'},
            success:function($msg){
                alert($msg);
            }
        });
    }
    }
</script>

匿名用户

试试这个

 <a class="btn btn-xs btn-danger" href="{{ route('shops.destroy',array($row->id)) }}" data-method="delete" rel="nofollow" data-confirm="Are you sure you want to delete this?">Delete this entry</a>

拉维删除