Node express & pg-promise - db.any 不是函数
Node express & pg-promise - db.any is not a function
我有这个错误:
TypeError: db.any is not a function
我正在使用带有 pg-promise 和 express 的节点 JS。
这是 queries.js 文件 (db):
const promise = require('bluebird');
var options = {
promiseLib: promise
};
var pgp = require('pg-promise')(options);
var connectionString = 'postgres://localhost:5432/spendy';
var db = pgp(connectionString);
console.log('connexion ok');
控制器:
const db = require('../queries');
module.exports = {
getAllUsers: function(req, res, next) {
db.any('select * from users')
.then((data) => {
res.status(200)
.json({
status: 'success',
data: data,
message: 'Retrieve all users'
});
})
.catch((err) => {
console.log(err);
return next(err);
});
}
}
路由文件:
var express = require('express');
var router = express.Router();
var db = require('../queries');
const UserController = require('../controller/UserController');
router.get('/users', UserController.getAllUsers);
module.exports = router;
我使用 pg-promise 版本 6.7.1 和 bluebird 3.5.0,
我不明白错误在哪里,如果有人可以帮助我,
谢谢!
您似乎没有在查询文件中导出数据库。
尝试将其包含在查询中
module.exports = db;
你没有导出你的模块queries
我有这个错误:
TypeError: db.any is not a function
我正在使用带有 pg-promise 和 express 的节点 JS。 这是 queries.js 文件 (db):
const promise = require('bluebird');
var options = {
promiseLib: promise
};
var pgp = require('pg-promise')(options);
var connectionString = 'postgres://localhost:5432/spendy';
var db = pgp(connectionString);
console.log('connexion ok');
控制器:
const db = require('../queries');
module.exports = {
getAllUsers: function(req, res, next) {
db.any('select * from users')
.then((data) => {
res.status(200)
.json({
status: 'success',
data: data,
message: 'Retrieve all users'
});
})
.catch((err) => {
console.log(err);
return next(err);
});
}
}
路由文件:
var express = require('express');
var router = express.Router();
var db = require('../queries');
const UserController = require('../controller/UserController');
router.get('/users', UserController.getAllUsers);
module.exports = router;
我使用 pg-promise 版本 6.7.1 和 bluebird 3.5.0, 我不明白错误在哪里,如果有人可以帮助我,
谢谢!
您似乎没有在查询文件中导出数据库。 尝试将其包含在查询中
module.exports = db;
你没有导出你的模块queries