Javascript 平均堆栈路由不返回响应
我正在尝试创建一个控制器/项目,返回集合“work”中的所有数据。数据在那里,调用以200完成,但只返回[],如果未注释,则返回test:test。有人能给我指出正确的方向吗,我是新手 服务器/controllers/work.jsJavascript 平均堆栈路由不返回响应,javascript,node.js,mongodb,mean-stack,Javascript,Node.js,Mongodb,Mean Stack,我正在尝试创建一个控制器/项目,返回集合“work”中的所有数据。数据在那里,调用以200完成,但只返回[],如果未注释,则返回test:test。有人能给我指出正确的方向吗,我是新手 服务器/controllers/work.js 'use strict'; /** * Module dependencies. */ var mongoose = require('mongoose'), Work = mongoose.model('Work'); exports.all = fu
'use strict';
/**
* Module dependencies.
*/
var mongoose = require('mongoose'),
Work = mongoose.model('Work');
exports.all = function(req, res) {
Work
.find()
.exec(function(err, project) {
console.log(project);
res.json(project);
//res.json({"test":"test"});
});
};
'use strict';
angular.module('mean.system').controller('WorkController', ['$scope', 'Global', '$http',
function ($scope, Global, $http) {
$scope.global = Global;
$http.get('/projects').success(function(d) {
}).error(function(d) {
});
}]);
public/system/controllers/work.js
'use strict';
/**
* Module dependencies.
*/
var mongoose = require('mongoose'),
Work = mongoose.model('Work');
exports.all = function(req, res) {
Work
.find()
.exec(function(err, project) {
console.log(project);
res.json(project);
//res.json({"test":"test"});
});
};
'use strict';
angular.module('mean.system').controller('WorkController', ['$scope', 'Global', '$http',
function ($scope, Global, $http) {
$scope.global = Global;
$http.get('/projects').success(function(d) {
}).error(function(d) {
});
}]);
server/routes/work.js
'use strict';
// User routes use users controller
var work = require('../controllers/work');
module.exports = function(app) {
app.get('/projects', work.all);
};
发现问题,出于某种原因,集合的某个地方被命名为“works”,而不是“work”。也许这是在mongoose或其他软件中自动完成的,但它解决了这个问题。您确定有数据吗。打开mongo cli并进行查看
mongo
thendb.works.find()
(如果您不确定集合名称,请执行显示集合;
以获取集合列表是的,当我访问终端mongo shell中的集合时会有数据。Press尝试根据文档名称将集合名称多元化。例如,当您使用mongoose.model('ModelName')时,“article”变为“articles”等)
它应该仍然能够理解您的要求。我很想看看您的模型,了解您为什么会看到这种行为。