Я пытаюсь передать выбранный переключатель в область действия, а затем на сервер, но он не проходит. Вот мой код HTML:
<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>
Вот контроллер:
$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);
});
};
Ошибка на стороне сервера, поскольку БД не принимает нулевые столбцы
Попробуйте изменить модель как объект с таким свойством id:
<input type="radio" ng-model="product.id" value="{{type.id}}" ng-/>
<label for="radio">{{type.name}}</label>
Вам также потребуется инициализировать $ scope.product в контроллере
$scope.product = {};
или если вы знаете, что выбрать значение по умолчанию для использования
$scope.product = {'id': 1};
Вот пример этой работы: http://codepen.io/mkl/details/xVLdjb/
ng-model="$parent.product_id"
и ng-model="product.product_id"
или ng-model="$product.id"
? Я имею в виду, все они должны работать.