Node.js Knex.js insert可以在本地工作,但不能在Heroku部署上工作
在我的Express应用程序中,当用户通过post请求发送数据时,我想创建一个新记录。当我在本地运行它时,它可以工作,但在部署的站点中它不工作 我正在使用knex.js。以下是处理post请求的路由:Node.js Knex.js insert可以在本地工作,但不能在Heroku部署上工作,node.js,postgresql,heroku,knex.js,Node.js,Postgresql,Heroku,Knex.js,在我的Express应用程序中,当用户通过post请求发送数据时,我想创建一个新记录。当我在本地运行它时,它可以工作,但在部署的站点中它不工作 我正在使用knex.js。以下是处理post请求的路由: router.post('/', function(req, res) { newBook = { title: req.body.title, genre: req.body.genre, description: req.body.description,
router.post('/', function(req, res) {
newBook = {
title: req.body.title,
genre: req.body.genre,
description: req.body.description,
cover_url: req.body.cover_url
}
Books().insert(newBook, 'id').then(function(result) {
res.send('Created new book with id ' + result)
})
})
以下是已部署站点上的错误日志:
未处理的拒绝错误:将值($1、$2、$3、$4)插入“books”(“cover\u url”、“description”、“genre”、“title”)返回“id”-重复键值违反唯一约束“books\u pkey”
在本地服务器上,请求成功,我在数据库中看到了新记录。你知道为什么会有不同吗?谢谢你的帮助!让我知道其他信息是否有用
- 部署到Heroku
- node.js v4.2.1
- express v4.13.1
- knex v0.9.0
- 第4.4.3页