1
- const { request } = require ( 'express' )
2
1
const express = require ( 'express' )
3
2
const cors = require ( 'cors' )
3
+ require ( 'dotenv' ) . config ( )
4
+ const User = require ( './models/user' )
4
5
const app = express ( )
5
6
6
7
app . use ( cors ( ) )
7
-
8
- let users = [
9
- {
10
- id : 1 ,
11
- fname : "Ajay" ,
12
- lname : "Singh" ,
13
-
14
- } ,
15
- {
16
- id : 2 ,
17
- fname : "John" ,
18
- lname : "john" ,
19
-
20
- } ,
21
- {
22
- id : 3 ,
23
- fname : "carl" ,
24
- lname : "johnson" ,
25
-
26
- } ,
27
- ]
8
+ app . use ( express . json ( ) )
28
9
29
10
app . get ( '/' , ( request , response ) => {
30
- response . send ( "hello mf " )
11
+ response . send ( "Hello there " )
31
12
} )
32
13
33
14
app . get ( '/api/users' , ( request , response ) => {
34
- response . json ( users )
15
+ User . find ( { } ) . then ( users => {
16
+ response . json ( users )
17
+ } )
35
18
} )
36
19
37
20
app . get ( '/api/users/:id' , ( request , response ) => {
38
- const id = Number ( request . params . id )
39
- const user = users . find ( user => user . id === id )
40
- user
41
- ? response . json ( user )
42
- : response . status ( 404 ) . end ( )
21
+ const id = request . params . id
22
+ console . log ( id )
23
+ User . findById ( id )
24
+ . then ( user => {
25
+ user
26
+ ? response . json ( user )
27
+ : response . status ( 404 ) . end ( )
28
+ } )
43
29
} )
44
30
45
31
app . delete ( '/api/users/:id' , ( request , response ) => {
@@ -50,12 +36,26 @@ app.delete('/api/users/:id', (request, response) => {
50
36
} )
51
37
52
38
app . post ( '/api/users/' , ( request , response ) => {
53
- // const user = request.body
54
- newId = Math . max ( ...users . map ( user => user . id ) )
55
- console . log ( newId + 1 )
56
- // const updatedUsers = users.concat(user)
57
- // response.json(updatedUsers)
58
- // response.status(201).end()
39
+ const user = request . body
40
+
41
+ const newUser = new User ( {
42
+ "email" : user . email ,
43
+ "fname" : user . fname ,
44
+ "lname" : user . lname ,
45
+ "password" : user . password
46
+ } )
47
+
48
+ if ( ! email || ! fname || ! lname || ! password ) {
49
+ response . json ( { error :"some Field(s) is/are missing" } )
50
+ }
51
+ newUser . save ( )
52
+ . then ( result => {
53
+ response . status ( 200 )
54
+ response . json ( newUser )
55
+ } ) . catch ( error => {
56
+ console . log ( "error occured while saving the user" , error ) ;
57
+ json . response ( { error : error } )
58
+ } )
59
59
} )
60
60
61
61
const unknownEndpoint = ( request , response ) => {
0 commit comments