validaciones en node con express con schema
Publicado por Paloma (2 intervenciones) el 08/06/2021 17:15:27
Buenas tardes,
Tengo un ejercicio en que tengo que validar y creo que no me coge bien las validaciones:
Este es mi archivo index.js y me funciona, pero las validaciones no las coge
Tengo un ejercicio en que tengo que validar y creo que no me coge bien las validaciones:
Este es mi archivo index.js y me funciona, pero las validaciones no las coge
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
//incluyo express//
const express = require('express')
//incluyo cors//
const cors = require('cors')
//incluyo mongoose//
const mongoose = require('mongoose')
const { Schema, model } = mongoose
//la app será igual a ejecutar express//
const app = express()
const { checkSchema } = require('express-validator');
//conecto node con mongo//
mongoose.connect('mongodb://localhost/angular-users', {
useUnifiedTopology: true,
useNewUrlParser: true,
useFindAndModify: false
})
.then((res) => { console.log(`Nos hemos conectado a Mongo`) })
//generamos nuevo esquema//
const UserSchema = new Schema({
name: { type: String },
surname: { type: String },
age: { type: String },
dni: { type: String },
birthday: { type: String },
colour: { type: String },
sex: { type: String }
})
//lo convertimos en un modelo de datos llamado user que cogerá el esquema userschema//
const User = model('user', UserSchema);
app.use(cors()) //decimos que la app use cors//
.use(express.urlencoded({ extended: true })) //vamos a usar de express el urlencode para que haga el body parser//
.use(express.json()) //que use los datos json de express//
//definimos puerto 5000 desde el que esté escuchando//
.listen(5000, () => {
console.log('Iniciando server')
})
//recogemos todos los datos de mongo//
app.get('/users', async(req, res) => {
const users = await User.find()
res.json(users)
})
app.post('/user', checkSchema({
name: {
isLength: { min: 3 },
isAlpha: true
},
surname: {
isLength: { min: 3 },
isAlpha: true
},
age: {
isFloat: { min: 0, max: 125 }
},
dni: {
isLength: { min: 9, max: 9 },
isAlphanumeric: true
},
birthday: {
isISO8601: true
},
colour: {
isLength: { min: 3 },
isAlpha: true
},
sex: {
isIn: {
options: [
['Hombre', 'Mujer', 'Otro', 'No especificado']
]
}
},
}),
async(req, res) => {
const nuevoUsuario = new User(req.body)
await nuevoUsuario.save()
res.json({ mensaje: "Usuario creado" })
})
app.put('/user/:id', async(req, res) => {
const userUpdated = await User.findByIdAndUpdate(req.params.id, req.body)
res.json({ status: "Usuario actualizado" })
})
app.delete('/user/:id', async(req, res) => {
const userDeleted = await User.findByIdAndDelete(req.params.id)
res.json({ status: "Usuario eliminado" })
})
Valora esta pregunta


0