2016-05-16 18 views
0

私は休憩サービスでデータを更新するために使用している工場を持っています。私は私のjsonドキュメントでparemeterを渡そうとすると、私はハードコードのIDを更新するだけでいい、jsonは残りのサービスに渡されますが、私のrestUrlがそうでないようにparemeterは工場に渡されていませんitemIdが欠落していると正しく生成されます。AngularjsのコントローラからJSONとパラメータを工場に渡す

工場:

angular.module('myApp') 
    .factory('updateItem', function ($resource) { 

     return $resource('http://someserviceUrl/items/:itemId', {}, { 
     update: {method: 'PUT', params: {itemId: '@itemId'}} 
     }); 


    }); 

コントローラ:私が正しくのitemIdを渡していない

$scope.itemId = 21; 
    var itemData = {"orderItem": {"itemHdr": { 
      "itemId": "", 
      "itemDescription":"Item Description", 
      "typeCd": "someType", 
      "salesPgm":"thisProgram", 
      "onSale": true 
     } 
}; 

    updateRfp.update($scope.itemData,$scope.itemId) 
    .$promise.then(function(res) { 
    console.log('updateItem.update triggered!'); 
    $scope.results = 'Item '+ res.code + ' has been saved.'; 


    }); 

アム?私が読んだドキュメンテーションは、コントローラと工場の間でこの変数を渡すこの方法を示していますが、jsonとパラメータの組み合わせを実行しているときにどのように行うかは示していません。

答えて

1

Angular docsはあなたがああ、はい、私は物事が振り向いた

+0

オブジェクトとスワップ引数としてIDを渡す必要がありますように

// Now call update passing in the ID first then the object you are updating Notes.update({ id:$id }, note); 

だから見えると言います。それを指摘してくれてありがとう! :)私の更新プログラムはこのようになります - updateRfp.update({itemId:$ scope.itemId}、$ scope.itemData) - これに苦しんでいる可能性がある他の人の利益のために。 –

関連する問題