TypeError:无法读取属性' findAll'未定义的

时间:2016-05-12 00:46:18

标签: javascript angularjs node.js postgresql

我正在开发一个使用angularjs,nodejs和postgresql的Web应用程序。我的数据库中有两个表,一个用于库存,另一个用于客户端。我在我的routes文件夹中组合了我的index.js文件,其中两个表都有一个findAll函数。当我将这两个表的引用放在index.js中时,一次只能运行一个。这是两个表都使用的模板,包括findAll:

exports.getobjects = function(req, res) {
models.Object.findAll().then(function(objectss){
    res.json(objects);
});
};

有没有人做过我想做的事情? 更新:这是整个index.js文件:

/*
* GET home page.
*/

var models = require("../models");

exports.index = function(req, res) {
res.render('index', {
    title : 'title'
 });
 };
 /* clients */
 exports.getclients = function(req, res) {
 models.Client.findAll().then(function(clients){
    res.json(clients);
});
};

exports.saveclients = function(req, res) {
models.Client.create({
    name: req.body.name,
    ssn: req.body.ssn,
    dln: req.body.dln,
    dls: req.body.dls,
    zip: req.body.zip,
    email: req.body.email,
    notes: req.body.notes,     
}).then(function(clients){
    res.json(clients.dataValues);
}).catch(function(error){
    console.log("ops: " + error);
    res.status(500).json({ error: 'error' });
});
};

/*inventory*/
exports.getunits = function(req, res) {
models.Unit.findAll().then(function(units){
    res.json(units);

});
};

exports.saveunits = function(req, res) {
models.Unit.create({
    name: req.body.text,
    quant: reg.body.quant                        
}).then(function(units){
    res.json(units.dataValues);
}).catch(function(error){
    console.log("ops: " + error);
    res.status(500).json({ error: 'error' });
});
};

1 个答案:

答案 0 :(得分:1)

您输入的输出不正确。以下是如何正确执行此操作的示例。

假设我想为模块导出2个函数,这是实现它的一种简单方法。

myModule.js

module.exports = {
    awesomeMethod: function () {

    },
    coolMethod: function () {

    }
}

现在使用它我会做以下

var myModule = require(' ./ myModule');

myModule.awesomeMethod();
myModule.coolMethod();