如何用续集验证模型?

时间:2018-09-26 14:52:45

标签: javascript node.js express sequelize.js

我正在从事快递和续编工作,以制作一个api,我有下一个模型:

'use strict';
module.exports = {
  up: (queryInterface, Sequelize) => {
    return queryInterface.createTable('Usuarios', {
      username: {
        type: Sequelize.STRING,
        primaryKey:true,
        allowNull:false,
        validate:{
          max:25
        }
      },
      primerNombre: {
        type: Sequelize.STRING,
        validate:{
          max:25
        }
      },
      segundoNombre: {
        type: Sequelize.STRING,
        validate:{
          max:25
        }
      },
      primerApellido: {
        type: Sequelize.STRING,
        validate:{
          max:25
        }
      },
      segundoapellido: {
        type: Sequelize.STRING,
        validate:{
          max:25
        }
      },
      direccion: {
        type: Sequelize.STRING,
        validate:{
          max:250
        }
      },
      telefono: {
        type: Sequelize.INTEGER,
        validate:{
          max:8
        }
      },
      password: {
        type: Sequelize.STRING,
        validate:{
          min:8
        },
        allowNull:false
      },
      admin:{
        type:Sequelize.BOOLEAN,
        allowNull: false,
      },
      createdAt: {
        allowNull: false,
        type: Sequelize.DATE
      },
      updatedAt: {
        allowNull: false,
        type: Sequelize.DATE
      }
    },
    {
      charset:'utf8'
    }
    );
  },
  down: (queryInterface, Sequelize) => {
    return queryInterface.dropTable('Usuarios');
  }
};

和y使下一个路由器通过方法发布来回答路由http://localhost/usuarios/

var express = require('express');
router = express.Router();
var model = require('../models/index');

router.post('/',function(req,res,next){
    console.log("entramos a este evento");
    model.Usuario.create({
        username:req.body.username,
        primerNombre: req.body.primerNombre,
        segundoNombre: req.body.segundoNombre,
        primerApellido: req.body.primerApellido,
        segundoapellido: req.body.segundoapellido,
        direccion: req.body.direccion,
        telefono: req.body.telefono,
        password: req.body.password
    }).then(usuario => res.status(201).json({
        error: false,
        data: usuario,
        message: 'New user is been created'
    }))
    .catch(error => res.json({
        error:true,
        data:[],
        error:error
    }))
});
module.exports = router;

如果我发送的密码无效的请求(例如null),则会将其添加到数据库中,我该如何真正进行模型验证?

0 个答案:

没有答案