我收到错误消息: TypeError:db(...)。return(...)。insert不是函数
出于某种原因,代码运行'db.select('*')'
没问题,但是到了
'db('courses')
.return('*')
.insert({'
它给出错误:TypeError:db(...)。return(...)。insert不是函数。
我不知道发生了什么,我已经坚持了4个小时。
我的代码示例:
const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const knex = require('knex');
const db = knex({
client:'pg',
connection:{
host:'127.0.0.1',
port:'5432',
user:'postgres',
password:'',
database:'YouList'
}
})
const app = express();
app.use(bodyParser.json());
app.use(cors())
db.select('*').from('users').then(data => {
console.log(data,'oia a data ai');
});
/*testando sem API*/
db('courses')
.return('*')
.insert({
title: "o grande curso",
description : "uma introducao aos ventos do leste",
user_id : 78,
urlimage : "https://i.imgur.com/TiavcG9.jpg",
created : new Date()
})
.then(console.log)
.then(user => {
res.json(user[0]);
})
.catch(err => res.status(400).json('unable to register'))
答案 0 :(得分:2)
您正在呼叫return
,而不是returning
。您还应该将其链接到insert
上,而不是之前拥有它。使其更加惯用。
所以只需将其切换...
db('courses')
.insert({
foo: 'bar'
})
.returning('*')