为什么我的功能指的是正确的路线?

时间:2015-08-28 09:05:35

标签: javascript angularjs

我的函数是使用update()方法更新对象的值。问题在于它引用users/:user_id/tasks而我需要users/:user_id/tasks/:id。为什么会这样,我该如何解决呢?

var app = angular.module('Todolist', ['ngResource']);

  app.factory('Task', [
    '$resource', function($resource) {
      return $resource('/users/:user_id/tasks/:id', {user_id: '@user_id'}, {update: {method: 'PUT'}});
     }
   ]);

  app.controller('TasksCtrl', [
    '$scope', 'Task', function($scope, Task) {

      $scope.user = gon.current_user

      $scope.updateTitle = function(data, task) {
        Task.update({
          user_id: $scope.user.id,
          id: task.id,
          title: data
        });
      };
 }
]);

enter image description here

1 个答案:

答案 0 :(得分:4)

定义id

时,您没有设置$resource参数值

使用

return $resource('/users/:user_id/tasks/:id', {
    user_id: '@user_id',
    id: '@id'
}, {
    update: {
        method: 'PUT'
    }
});