No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Implementar validación de modelo

21/38
Recursos

Aportes 6

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Sails tambien tiene validaciones dentro de la definición de los atributos en el modelo.
https://sailsjs.com/documentation/concepts/models-and-orm/validations
Tiene una por ejemplo para email.

Al cambiar la librería de JOI cambia la forma de validar los datos.
Ahora para realizar la validación se realiza de la siguiente manera:

 const params = await schema.validateAsync(req.allParams())
signup: async function (req, res) {
    try {
      const schema = Joi.object().keys({
        email: Joi
          .string()
          .required()
          .email(),
        password: Joi.string().required()
      });
      const params = await schema.validate(req.allParams());
      return res.ok(params);

    } catch (error) {
      if (error.name === 'ValidationError') {
        return res.badRequest({ error }).json();
      }
      return res.serverError({ error }).json();
    }
  },

El módulo de JOI, el que se muestra en el video esta deprecado y pronto se dejará de mantener. Por lo que se sugiere utilizar el siguiente que es donde se continuó el desarrollo de la librería.

@hapi/joi

Para ver la descripción del error, puede ponerse console.log en el catch así:

} catch (err) { console.log(err.stringify) if (err.name === 'ValidationError') { return res.badRequest({err}).json(); } return res.serverError({err}).json(); }

el output puede verse en consola levantando el servidor con sails lift