Моя установка - NodeJS, MongoDB и Angular. В настоящее время я пытаюсь добавить функцию POSTing в свой тестовый код, но не могу обернуть вокруг себя. В настоящее время я могу вытащить данные из БД, и я бросил вместе быстрый и грязный вид/фабрику, основанный на ряде примеров, которые я видел, чтобы попытаться запустить функцию POST.Публикация с угловым по отношению к Mongo
Проблема, с которой я столкнулся, фактически получает значения, добавляемые в БД. Когда я отправляю форму, в БД создается новый ObjectID с полем «_v» и значением 0. Поэтому я знаю, что POST по крайней мере отправляется в БД, но значения, которые я хочу, не являются. Я уверен, что я делаю что-то глупое, и любая помощь очень ценится.
Вот моя установка контроллера/завод: (я назвал POST завод «тако», так что будет стоять вне Кроме того, потому что они вкусные..)
angular.module('app', ['ngRoute'])
.factory('Users', ['$http', function($http) {
return $http.get('/users');
}])
.factory('taco', ['$http', function($http) {
return $http.post('/users');
}])
.controller('UserController', ['$scope', 'Users', function($scope, Users) {
Users.success(function(data) {
$scope.users = data;
}).error(function(data, error) {
console.log(error);
$scope.users = [];
});
}])
.controller('ExampleController', ['$scope', 'taco', function($scope, taco) {
$scope.submit = function() {
if ($scope.users.name) {
$scope.name.post(this.name);
$scope.name = '';
}
};
}]);
Вот моя форма:
<div>
<form ng-submit="submit()" ng-controller="ExampleController">
Enter the things:<br/>
<input type="text" ng-model="name" name="user.name" placeholder="name" /><br/>
<input type="text" ng-model="emp_id" name="user.emp_id" placeholder="EID" /><br/>
<input type="text" ng-model="loc" name="user.loc" placeholder="location" /><br/>
<input type="submit" id="submit" value="Submit" />
</form>
</div>
Вы определили услугу тако, вводят его в вашем контроллере, но не использовал его. Кроме того, ваша служба возвращает обещание - ваша служба ничего не делает. Вы проходили обучение в AngularJS? – callmekatootie