Я учусь создавать приложение, используя node express и knexjs для подключения к базе данных Postgresql.Когда я делаю почтовый запрос, появляется это предупреждение.Данные, которые я пытаюсь опубликовать, отсутствуют в базе данных.Может быть, приложение считало, что я использую sqlite3?
sqlite не поддерживает вставку значений по умолчанию.Установите флаг useNullAsDefault
, чтобы скрыть это предупреждение.(см. документы http://knexjs.org/#Builder-insert).
Это мой server.js.
const express = require('express');
const app = express();
const path = require('path');
const knex = require('knex');
const bodyParser = require('body-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
const database = knex({
client: 'pg',
connection: {
host : '127.0.0.1',
user : 'xxxxxxx',
password : 'xxxxxxx',
database : 'xxxxxxxxdb'
}
});
app.use(express.static(__dirname + '/../public/'));
app.get('/add_athlete', function(req, res) {
res.sendFile('add_athlete.html', {root: path.resolve(__dirname + '/../public/templates')});
});
app.post('/add_athlete', function(req, res) {
knex('participants').insert({
participant_number: 1,
email: "test@gmail.com",
first_name: "test",
last_name: "again"
})
.then (function () {
res.json({success: true, message: "ok"})
})
});
app.listen(3000);
console.log('Running at port 3000');