Advertisement
Guest User

Untitled

a guest
May 21st, 2018
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. const express = require('express');
  2. const app = express();
  3. var http = require('http').Server(app);
  4. app.use(express.static(__dirname + '/'));
  5. var bodyParser = require('body-parser');
  6. app.use(bodyParser.json());
  7. app.use(bodyParser.urlencoded({extended: true}));
  8. const { check, validationResult, body } = require('express-validator/check');
  9. const { matchedData, sanitize } = require('express-validator/filter');
  10.  
  11. //connect to db with knex query builder
  12. var knex = require('knex')({
  13. client: 'pg',
  14. connection: {
  15. host : 'localhost',
  16. user : 'postgres',
  17. password : 'postgres',
  18. database : 'records'
  19. }
  20. });
  21.  
  22.  
  23. //if select promise is resolved then do something with data returned
  24. var selectQuery = knex.select().from('users').then(x => x)
  25. selectQuery.catch(err => console.log(err))
  26.  
  27.  
  28.  
  29. app.get('/', (req, res, next) => {
  30. res.sendFile('/views/index.html', {root: __dirname});
  31. })
  32.  
  33. app.get('/data', (req, res) => {
  34. selectQuery.then(data => {
  35. res.json(data);
  36. })
  37. })
  38.  
  39. app.post('/add', [
  40. body(['fname', 'age', 'phone', 'location']).not().isEmpty(),
  41. body('email').isEmail()
  42. ], (req, res) => {
  43.  
  44. const errors = validationResult(req);
  45. if (!errors.isEmpty()) {
  46. return console.log(errors.mapped());
  47. }
  48. const data = matchedData(req);
  49. console.log(data);
  50. var insertQuery = knex('users').insert([{name: data.fname, age: data.age, phone: data.phone, email: data.email, location: data.location}])
  51. insertQuery.catch(err => console.log(err))
  52. })
  53.  
  54.  
  55. http.listen(8000, () => console.log("listening on port 8000..."))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement