要创建从 AngularJS 中的表单添加的新记录,我有:
task = Task.save($scope.newTask)
但我还需要检索保存时创建的新 ID。在这里找到的答案:在调用 AngularJS $save 后未获得更新的值似乎可以解决我需要的问题,但是当我转换为 CoffeeScript 时:
task = $scope.newTask
task.$save (msg, headers) ->
console.log task.id
这没用。我正在使用 Ruby on Rails。任何帮助表示赞赏。
编辑:
我在上面的代码中收到错误:“对象#没有方法‘保存’”
这是我的代码的大图:
app = angular.module("appName", ["ngResource"])
app.factory "Task", ["$resource", ($resource) ->
$resource("/projects/:project_id/tasks/:id", {project_id: "@project_id", id: "@id"}, {update: {method: "PUT"}, destroy: { method: 'DELETE' }})
]
@TaskCtrl = ["$scope", "Task", ($scope, Task) ->
$scope.tasks = Task.query()
$scope.saveTask = ->
task = $scope.newTask
task.$save (msg, headers) ->
console.log task.id
$scope.tasks.push(task)
$scope.newTask = {}
]