2014-09-14 2 views
0

Я работал над небольшим приложением, которое использует Laravel 4 в качестве основы с AngularJS в качестве отправной точки (в основном для изучения угловых символов).Laravel 4 AngularJS удалить запись из базы данных

Идея состоит в том, что я могу добавить закладки через форму и показать их в таблице для поиска. У меня есть работа, где я могу публиковать в базе данных и сохранять записи. Следующее делает эту работу идеально для моих нужд.

$scope.addLink = function() { 

    var link = { 
     title: $scope.newTitle, 
     address: $scope.newAddress, 
     type: $scope.newType 
    }; 

    $scope.links.push(link); 

    $http.post('bookmarks', link); 
}; 

Однако, я не могу решить, как удалить строку. Ну, я могу удалить его в таблице, но не из базы данных, используя маршруты. У меня есть функция ng-click, которая удаляет строку из таблицы с помощью сплайсинга, но не знает, как отправить данные на маршрут Laravel для удаления из базы данных. До сих пор у меня есть это:

$scope.remove = function (idx) { 
    var link = $scope.links[idx]; 
    $scope.links.splice(idx, 1); 

    $http.delete('removemark/{link.id}'); 
    }; 

Очевидно, что $ http.delete не установлен правильно, но не знаете, как это сделать.

У меня есть маршрут, как это:

Route::delete('removemark /{id}', function($id) 
    { 
    Bookmark::destroy($id); 
    }); 

Но это не работает. Надеюсь, кто-то может указать мне в следующем направлении.

ответ

0

Вам необходимо самостоятельно построить строку url.

$scope.remove = function (idx) { 
    var link = $scope.links[idx];  

    $http.delete('removemark/' + link.id).success(function(response){ 
     /* should validate response and then remove from array */ 
     $scope.links.splice(idx, 1); 
    }).error(function(err){ 
     /* do something with errors */ 
    }); 
}; 

Я хотел бы предложить вам оставить элемент в массиве, пока не подтвердили удалить из ответа сервера, а затем удалить его из массива.

Используйте вкладку в сети браузера для проверки запросов. Вероятно, вы увидите статус 404 с тем, что у вас было, и дадите вам подсказки, где все будет не так.

+0

Отлично, спасибо, чарли, который сработал. Но одна из причин, по которой я получал 404, состояла в том, что между removeemark и пробелом было {/ id}, поэтому все хорошо. – boony

Смежные вопросы