Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const express = require('express');
- const app = express();
- var http = require('http').Server(app);
- app.use(express.static(__dirname + '/'));
- var bodyParser = require('body-parser');
- app.use(bodyParser.json());
- app.use(bodyParser.urlencoded({extended: true}));
- const { check, validationResult, body } = require('express-validator/check');
- const { matchedData, sanitize } = require('express-validator/filter');
- //connect to db with knex query builder
- var knex = require('knex')({
- client: 'pg',
- connection: {
- host : 'localhost',
- user : 'postgres',
- password : 'postgres',
- database : 'records'
- }
- });
- //if select promise is resolved then do something with data returned
- var selectQuery = knex.select().from('users').then(x => x)
- selectQuery.catch(err => console.log(err))
- app.get('/', (req, res, next) => {
- res.sendFile('/views/index.html', {root: __dirname});
- })
- app.get('/data', (req, res) => {
- selectQuery.then(data => {
- res.json(data);
- })
- })
- app.post('/add', [
- body(['fname', 'age', 'phone', 'location']).not().isEmpty(),
- body('email').isEmail()
- ], (req, res) => {
- const errors = validationResult(req);
- if (!errors.isEmpty()) {
- return console.log(errors.mapped());
- }
- const data = matchedData(req);
- console.log(data);
- var insertQuery = knex('users').insert([{name: data.fname, age: data.age, phone: data.phone, email: data.email, location: data.location}])
- insertQuery.catch(err => console.log(err))
- })
- http.listen(8000, () => console.log("listening on port 8000..."))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement