【发布时间】:2016-10-13 22:24:56
【问题描述】:
答案最后评论中的解决方案
我这里有这个功能
function delTag(e, name){
var tag_id = $(e).attr('rel');
$.ajax({
type: "DELETE",
url: '/admin/tags/'+ tag_id+'' ,
success: function(data){
$('#tags_tr'+tag_id).remove();
toastr.error('Tag '+name+' has been deleted');
console.log("dsa");
},
error: function(data){
console.log('Error:');
}
});
}
我这样称呼它:
@foreach($tags as $tag)
<button onclick='delTag(this, "{{$tag->name}}")' rel={{$tag->id}} type="button" data-dismiss="modal" class="btn btn-danger">Yes</button>
@endforeach
我明白了:
我的记录已从数据库中正确删除,但是,ajax 抛出错误。为什么会这样?
如果有帮助,这是我的整个路线......
Route::get('admin/', 'AdminController@getAdminIndex')->name('admin.index');
Route::delete('admin/users/{id}', 'Auth\\RegisterController@destroy')->name('admin.users.destroy');
Route::put('admin/users/{id}', 'Auth\\RegisterController@update')->name('admin.users.update');
Route::resource('/admin/posts', 'PostController');
Route::resource('/admin/roles', 'RoleController');
Route::delete('/admin/comments/{id}/{user_id}', 'CommentsController@destroy')->name('comments.destroy');
Route::resource('/admin/comments', 'CommentsController', [
'except' => ['store', 'destroy']
]);
Route::get('/administrator', 'AdminController@getAdmin')->name('admin');
Route::put('/admin/comments/approve/{id}', 'CommentsController@updateApprove')->name('admin.comments.approve');
Route::put('/admin/tags/associate/{tagName}', 'TagController@updateAssociation')->name('admin.tags.associate');
Route::put('/admin/categories/associate/{categoryName}', 'CategoryController@updateAssociation')->name('admin.categories.associate');
Route::resource('/admin/categories', 'CategoryController');
Route::resource('/admin/tags', 'TagController');
Route::get('/admin/pages/tables/{user_id}', 'AdminController@getTables')->name('admin.pages.tables');
Route::get('/admin/pages', 'AdminController@getIndex')->name('admin.pages.index');
【问题讨论】:
-
你没有在ajax调用中指定GET或POST方法
-
我为什么要这样做?方法是DELETE
-
我可以看到路由 /admin/tags/{no wild card} 后没有通配符
-
没有通配符是什么意思?我对此一无所知
标签: php jquery html ajax laravel