Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.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
Angularjs未在特定字段中保存数据_Angularjs_Node.js_Mongodb - Fatal编程技术网

Angularjs未在特定字段中保存数据

Angularjs未在特定字段中保存数据,angularjs,node.js,mongodb,Angularjs,Node.js,Mongodb,我试图在name字段中保存数据,但尽管POST请求运行时没有任何错误,mongodb集合只显示_id和_vupdated 简而言之,我无法在特定字段中保存数据 视图: 路线: 'use strict'; module.exports = function(app) { var bookList = require('../controllers/testController'); app.use(function(req, res, next) { res.header("Acces

我试图在name字段中保存数据,但尽管POST请求运行时没有任何错误,mongodb集合只显示_id和_vupdated

简而言之,我无法在特定字段中保存数据

视图:

路线:

'use strict';
module.exports = function(app) {
  var bookList = require('../controllers/testController');


app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  res.header("Content-Type', 'application/x-www-form-urlencoded;charset=utf-8");
  next();
});

  app.route('/test')
    .get(bookList.list_all_books)
    .post(bookList.create_a_books);
};
我在设置API时创建的testController.js:

'use strict';

var mongoose = require('mongoose'),
  menu = mongoose.model('test');

exports.list_all_menus = function(req, res) {
  menu.find({}, function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
    console.log(res);
  });
};

exports.create_a_menu = function(req, res) {
  var new_menu = new menu(req.body);
  new_menu.save(function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
  });
};



exports.read_a_menu = function(req, res) {
  menu.findById(req.params.menuId, function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
  });
};


exports.update_a_menu = function(req, res) {
  menu.findOneAndUpdate({_id: req.params.menuId}, req.body, {new: true}, function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
  });
};


exports.delete_a_menu = function(req, res) {
  menu.remove({
    _id: req.params.menuId
  }, function(err, menu) {
    if (err)
      res.send(err);
    res.json({ message: 'bestseller_books successfully deleted' });
  });
};
注:

使用postman,POST和GET请求可以正常工作 每次点击提交按钮,我都会在mongodb集合中看到这个长数组: {id:5a3f7a406e4b781598c05e92,{U v:0},{id:5a3f7a53487cb51b347e2f5e,{U v:0},{id:5a3f7a5fd6a48b1ac0357054,{U v:0} 不保存任何名称,而名称是集合中的第二个字段

我无法理解testController.js中定义的方法create\u a\u menu、list\u all\u menu、read\u a\u menu的用法。这些有什么用? 你试过$http.post吗http://localhost:3000/test“,{'name':self.book.name},配置

在html模板中使用ng model=po.book.name时

只需将其重命名为book_name即可

$http.post'http://localhost:3000/test“,{'name':self.book_name},配置


ng model=po.book_name

在我的mongodb集合中,您使用node?将数据保存在哪里。在本地主机上运行的数据库服务器。API很好。我需要看看从angular获取数据并保存在monodb中的代码,你能编辑你的问题吗?嗯,我没有。那么,我需要创建一个nodejs文件来保存数据吗?您的控制器test\u Controller将有一个方法create\u a\u books,该方法负责根据您的nodejs代码在mongodb中保存数据。显示其代码。是。但是没有运气。
'use strict';
module.exports = function(app) {
  var bookList = require('../controllers/testController');


app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  res.header("Content-Type', 'application/x-www-form-urlencoded;charset=utf-8");
  next();
});

  app.route('/test')
    .get(bookList.list_all_books)
    .post(bookList.create_a_books);
};
'use strict';

var mongoose = require('mongoose'),
  menu = mongoose.model('test');

exports.list_all_menus = function(req, res) {
  menu.find({}, function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
    console.log(res);
  });
};

exports.create_a_menu = function(req, res) {
  var new_menu = new menu(req.body);
  new_menu.save(function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
  });
};



exports.read_a_menu = function(req, res) {
  menu.findById(req.params.menuId, function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
  });
};


exports.update_a_menu = function(req, res) {
  menu.findOneAndUpdate({_id: req.params.menuId}, req.body, {new: true}, function(err, menu) {
    if (err)
      res.send(err);
    res.json(menu);
  });
};


exports.delete_a_menu = function(req, res) {
  menu.remove({
    _id: req.params.menuId
  }, function(err, menu) {
    if (err)
      res.send(err);
    res.json({ message: 'bestseller_books successfully deleted' });
  });
};