更新、删除不适用于 angular $resource + [php]
Update, Delete do not work with angular $resource + [php]
我是 angular js 和 php 的新手。我发现有关使用 $resource 更新 db 中的重新编码的文档有限。但是我找到了一个很好的教程 here ,它几乎提供了有关 $resource 的所有内容,但是我无法使其工作的几件事是使用 $resource.
更新和删除数据库中的记录
我的资源服务代码:
var configServices = angular.module("configServices", []);
configServices.factory('Category', ['$resource', function($resource){
return $resource("/configurator/api/categories/:id", {id:"@category_id"},
{update:{
mothod: 'PUT',
isArray: false
}
})
}])
这是我的服务代码:
this.updateCategory = function(_data){
var newUpdate = Category.get({id:_data.category_id}, function(result){
newUpdate.data = _data;
newUpdate.$update(function(res){
console.log("Got respose from update call" + res);
})
})
}
您可以看到我几乎按照本教程进行操作,但无法更新或删除数据库中的记录。请帮助找出我做错了什么。
php:
private function updateCategory($data){
$_id = implode("", $this->args);
$query = "UPDATE cg_category SET category_name = '$data[category_name]' WHERE category_id = '$data[category_id]'";
$result = mysqli_query($this->db, $query) or mysql_error();
if($result)
{
$this->response($this->json(array("Success" => true)), 200);
}
}
这似乎是 Angular $resource class 中的一个错误,其中 PUT 方法也发送 GET 请求,所以我继续使用 $http put 方法并且效果很好。
这是我使用 $http
的最终工作代码
this.updateCategory = function(_data){
$http.put("/domain/api/categories/"+_data.category_id, _data).success(function(res){
console.log("Got put method " + res);]
})
}
不过,如果您发现 $resource class 适用于 PUT 方法,我仍然希望收到您的来信。
我是 angular js 和 php 的新手。我发现有关使用 $resource 更新 db 中的重新编码的文档有限。但是我找到了一个很好的教程 here ,它几乎提供了有关 $resource 的所有内容,但是我无法使其工作的几件事是使用 $resource.
更新和删除数据库中的记录我的资源服务代码:
var configServices = angular.module("configServices", []);
configServices.factory('Category', ['$resource', function($resource){
return $resource("/configurator/api/categories/:id", {id:"@category_id"},
{update:{
mothod: 'PUT',
isArray: false
}
})
}])
这是我的服务代码:
this.updateCategory = function(_data){
var newUpdate = Category.get({id:_data.category_id}, function(result){
newUpdate.data = _data;
newUpdate.$update(function(res){
console.log("Got respose from update call" + res);
})
})
}
您可以看到我几乎按照本教程进行操作,但无法更新或删除数据库中的记录。请帮助找出我做错了什么。
php:
private function updateCategory($data){
$_id = implode("", $this->args);
$query = "UPDATE cg_category SET category_name = '$data[category_name]' WHERE category_id = '$data[category_id]'";
$result = mysqli_query($this->db, $query) or mysql_error();
if($result)
{
$this->response($this->json(array("Success" => true)), 200);
}
}
这似乎是 Angular $resource class 中的一个错误,其中 PUT 方法也发送 GET 请求,所以我继续使用 $http put 方法并且效果很好。
这是我使用 $http
的最终工作代码this.updateCategory = function(_data){
$http.put("/domain/api/categories/"+_data.category_id, _data).success(function(res){
console.log("Got put method " + res);]
})
}
不过,如果您发现 $resource class 适用于 PUT 方法,我仍然希望收到您的来信。