Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript angularjs资源如何发布数据_Javascript_Ruby On Rails_Angularjs_Restful Architecture - Fatal编程技术网

Javascript angularjs资源如何发布数据

Javascript angularjs资源如何发布数据,javascript,ruby-on-rails,angularjs,restful-architecture,Javascript,Ruby On Rails,Angularjs,Restful Architecture,我正在使用一个简单的服务,发布一些数据。目前我有这样的服务: sitekServices.factory('Books', ['$resource', function($resource){ return $resource('books/:id.json', {id:'@id'}); }] ); $scope.book = { payment_method: 'Cash', provider: 'Acme', detail: [{isbn:'foo', pric

我正在使用一个简单的服务,发布一些数据。目前我有这样的服务:

sitekServices.factory('Books', ['$resource',
  function($resource){
    return $resource('books/:id.json', {id:'@id'});
  }]
);
$scope.book =
{
  payment_method: 'Cash',
  provider: 'Acme',
  detail: [{isbn:'foo', price:123}]
}
在代码中,我构建了这样一个对象

$scope.book=Books.get({id:0})

它为我构建了一个带有一些默认值的空对象。在应用程序中,我填充对象的其余部分以获得如下内容:

sitekServices.factory('Books', ['$resource',
  function($resource){
    return $resource('books/:id.json', {id:'@id'});
  }]
);
$scope.book =
{
  payment_method: 'Cash',
  provider: 'Acme',
  detail: [{isbn:'foo', price:123}]
}
但是当我用

$scope.book.$save()

服务器(rails应用程序)中接收的数据的形式如下:

{
  :payment_method => 'Cash',
  :provider => 'Acme'
  :detail => [{:isbn => 'foo', :price => 123}]
  :book => {
    :payment_method => 'Cash',
    :provider => 'Acme'
  }
}

这是正常行为吗?

尝试Books.save($scope.book);您在Rails中看到的内容可能与您在实际请求中看到的内容不同。查看Chrome的网络选项卡,确认您的请求确实包含僵尸
book
子对象。