我们正在尝试使用Knex连接Heroku/Postgres数据库并运行查询,但遇到了困难。我们已经设置好了Heroku/Postgres数据库并创建了表格,但是使用Knex连接时出现了问题。更糟糕的是,几乎没有关于如何连接Heroku/Postgres和Knex或任何ORM的文档,因此尝试解决这些问题非常困难。
以下是我尝试过的连接模式:
我们也尝试过这种模式:
我们还没有拉取本地数据库的副本,所以我们运行的每个测试基本上都是一个 git 提交。我们基本上是在测试对我们的根目录(index.html)页面的 GET 请求上执行插入查询。因此,在任何对主页的 GET 请求中,它都应该向我们的 waterrates 表中插入一些内容。如果我将其从插入更改为选择,则会返回一个对象,但您实际上看不到对象中的任何数据。
我们尝试使用的插入如下:
我们其实不确定错误出在哪里,因为尝试连接并没有出现任何错误。可能是一些简单的问题,但我们不知道在哪里/如何进行故障排除。非常感谢您提供任何帮助! 谢谢, B
以下是我尝试过的连接模式:
var knex = require('knex')({
client: 'pg',
connection: {
user: username,
password: password,
host: host,
port: port,
database: database,
ssl: true
}
}
});
还有...请注意,将ssl true切换并完全删除也没有效果。
var knex = require('knex')({
client: 'pg',
connection: HEROKU_POSTGRESQL_COLOR_URL,
ssl: true
}
});
我们也尝试过这种模式:
var pg = require('knex')({
client: 'pg',
connection: HEROKU_POSTGRESQL_COLOR_URL
});
我们还没有拉取本地数据库的副本,所以我们运行的每个测试基本上都是一个 git 提交。我们基本上是在测试对我们的根目录(index.html)页面的 GET 请求上执行插入查询。因此,在任何对主页的 GET 请求中,它都应该向我们的 waterrates 表中插入一些内容。如果我将其从插入更改为选择,则会返回一个对象,但您实际上看不到对象中的任何数据。
我们尝试使用的插入如下:
knex.select('*').from('waterrates').then(function(rows){
return rows;
});
knex('waterrates').insert({name: 'pleeeaseee work'}, {rate: 100}).then(function(rows){
console.log(rows);
})
knex.select().
我们其实不确定错误出在哪里,因为尝试连接并没有出现任何错误。可能是一些简单的问题,但我们不知道在哪里/如何进行故障排除。非常感谢您提供任何帮助! 谢谢, B