2016-03-29 6 views
0

選択したラジオボタンをスコープに渡してからサーバーに渡そうとしていますが、それは通過しません。ここでAngularJsラジオがスコープにバインドされません

<div class="form-group"> 
      <label class="control-label"> What product?</label> 
      <div ng-repeat="type in typeProducts | orderBy:'name'"> 
       <input type="radio" ng-model="$parent.product_id" name="typeproduct" value="{{type.id}}"/> 
       <label for="radio">{{type.name}}</label> 
      </div> 
     </div> 

コントローラされています:ここに私のHTMLコードがある

$scope.createProduct = function() { 
     Account.createProduct($scope.product) 
     .then(function() { 
      toastr.success('Product has been created'); 
     }) 
     .catch(function(response) { 
      toastr.error(response.data.message, response.status); 
     }); 
    }; 

DBがNULL列

+0

http://codepen.io/mkl/details/xVLdjb/作業この例で使用されますか?障害があると思うなら、コードを投稿できますか?これはAngularと何が関係していますか? – stevenvanc

+0

私はそれを間違えました。 500エラーが表示されますが、新しい製品を作成しようとするとフィールドの1つが表示されないためです。そのフィールドは、スコープに渡されていないフィールドと同じです。選択したラジオがスコープに渡されていません。 –

答えて

1

モデルを変更してみを受け付けないので、エラーは、サーバー側にあります

<input type="radio" ng-model="product.id" value="{{type.id}}" ng-/> 
     <label for="radio">{{type.name}}</label> 

また、$ scope.producを初期化する必要がありますコントローラ

$scope.product = {}; 

またはデフォルト値を選択するために知っている場合でtはここで

$scope.product = {'id': 1}; 

は何のことをいっているのサーバー

+0

これは私の問題を解決しましたが、 'ng-model =" $ parent.product_id "'と 'ng-model =" product.product_id "'または 'ng-model =" $ product.id "'の違いは何ですか?つまり、すべてがうまくいくはずです。 –

+0

このサイトは私よりも優れた違いを説明するのに役立ちます... http://odetocode.com/blogs/scott/archive/2013/06/25/radio-buttons-with-angularjs.aspx – Michael

関連する問題