forked from jzamorano20/Realtor_App
-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.js
100 lines (80 loc) · 2.3 KB
/
server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
require('dotenv').config();
const express = require('express');
const mysql = require('mysql2');
const PORT = process.env.PORT || 3000;
const routes = require('./controllers')
const db = require('./config/connection');
const { engine } = require('express-handlebars');
const session = require('express-session');
const { User, House } = require('./models');
const app = express();
// Static and middleware
app.use(express.json());
app.use(express.urlencoded({extended: false}));
app.use(express.static('public'));
// Setup handlebars
app.engine('hbs', engine({
extname: '.hbs',
runtimeOptions: {
allowProtoPropertiesByDefault: true
}
}));
app.set('view engine', 'hbs');
app.set('views', './views');
// Setup the req.session object for our routes
app.use(session({
// Required to be used to validate the client cookie matches the session secret
secret: "SUPER_SECRET",
resave: false,
saveUninitialized: false
}));
// Load all of our routes at the root
app.use(routes)
db.sync({ force: false }).then(async () => {
// const user1 = await User.create({
// user_name: 'John',
// password: 'Doe'
// });
// const user2 = await User.create({
// user_name: 'Jane',
// password: 'Doe'
// });
// const house1 = await user1.createHouse({
// location: "123 Street",
// price: 25555.00,
// type: "1 room closet"
// });
// const house2 = await user2.createHouse({
// location: "555 Street",
// price: 25555.00,
// type: "1 bathroom"
// });
// // injects a row into the pivot table
// await user1.addFavorites(house2);
// await user2.addFavorites(house1);
// const pulledUser = await User.findOne({
// where: {
// user_name: "John"
// },
// include: [
// House, //Get house they made, hasMany association
// {
// model: House,
// as: 'favorites'
// } // Belong to Many association - we grabbed by alias name "favorites"
// ]
// });
// const pulledUser2 = await User.findOne({
// where: {
// user_name: "Jane"
// },
// include: {
// model: House,
// as: 'favorites'
// }
// });
// // console.log(pulledUser.houses);
// console.log(pulledUser)
// // console.log(pulledUser2.favorites);
app.listen(PORT, () => console.log('Server started on port :) %s', PORT))
});