嘿,我正在尝试让Nodejs Koa使用Koa-pg模块与postgres对话,但我一直收到'Can't find module pg‘错误。我试着遵循koa-pg的例子,但已经提出了short...so任何关于如何进步的建议都将不胜感激。
如果按如下方式创建我的app.js文件:
var koa = require('koa');
var route = require('koa-route');
var koaPg = require('koa-pg');
var roads = require('./controllers/roads');
var app = module.exports = koa();
app.use(route.get('/roads/bbox/', roads.bbox));
app.listen(3000);
console.log('listening on port 3000');
然后创建了控制器文件,如下所示:
var credentials = require('../credentials.js');
var environment = credentials.dev;
app.use(koaPg('postgres://' + environment.user + '@' + environment.host + ':' + environment.port + '/' + environment.database))
module.exports.bbox = function * bbox(next) {
var result = yield this.koaPg.db.client.queryPromise('SELECT now()')
console.log('result: ', result)
this.body = result.rows[0].now.toISOString()
};
但是我得到了以下错误:
module.js:338
throw err;
^
Error: Cannot find module 'pg'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (c:\Users\User\Documents\restful_koa\node_modul
es\koa-pg\index.js:12:27)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
这只是一个个人项目,但我很想知道我哪里错了。干杯
发布于 2015-07-30 20:48:32
正如评论中提到的:
如果您想要将pg
模块保存到package.json
,则需要通过npm install pg
或npm install pg --save
安装它。
之所以需要这样做,是因为koa-pg
依赖于co-pg
,所以当您安装前者时,也会安装后者。但是pg
不是co-pg
的依赖项,这就是为什么你必须单独安装它的原因。
https://stackoverflow.com/questions/31720798
复制相似问题