首先,我是 Laravel + Angular 的新手,这基本上就是我在这里的原因。
我从Angular控制器中删除此功能,该控制器使用$http.delete()
来调用Laravel控制器。
$scope.deleteJob = function(index) {
$scope.loading = true;
var job = $scope.jobs[index];
$http.delete('/api/job/' + job.jobId)
.success(function() {
$scope.job.splice(index, 1);
$scope.loading = false;
});;
};
通过这条路线,我应该去Laravel控制器:
Route::resource('api/job','ApiJobController');
我已经定义了一个从我的雄辩数据库中删除的功能
public function destroy($id)
{
App\Job::destroy($id);
}
我不知道我错过了什么,但每当我调用deleteJob(index)
时,我都会收到服务器错误。
DELETE http://localhost:8000/api/job/20 500 (Internal Server Error)
我尝试使用/api/job/destroy/
,仍然获得500
答案 0 :(得分:0)
尝试使用此路线
Route::get('/api/job','ApiJobController@destroy');
或者您可以使用
$http({
method: 'DELETE',
url: '/api/job/' + job.jobId
}).then(function successCallback(response) {
// this callback will be called asynchronously
// when the response is available
}, function errorCallback(response) {
// called asynchronously if an error occurs
// or server returns response with an error status.
});
答案 1 :(得分:0)
试试这个。
App\Job::find($id)->delete();