Giter VIP home page Giter VIP logo

Comments (5)

userAdityaa avatar userAdityaa commented on June 6, 2024

I would like to work on it but can you give me a little more for the explanation as im not able to get to the problem.

from node-express-boilerplate.

userAdityaa avatar userAdityaa commented on June 6, 2024

Or the promise error you are getting is must be because the validateAsync is an async function. so, you should use await first
with the schema.validate

from node-express-boilerplate.

yachtsman-dev avatar yachtsman-dev commented on June 6, 2024

I would like to work on it but can you give me a little more for the explanation as im not able to get to the problem.

I am using validate middleware, see this file. https://github.com/hagopj13/node-express-boilerplate/blob/master/src/middlewares/validate.js

This is my schema
{ body: Joi.object().keys({ Number: Joi.number().external(verifyNumber), TotalAmount: Joi.number().positive().greater(0).required(), Email: Joi.string().email().required(), Currency: Joi.string().required(), ExpiryMonth: Joi.number().when('type', { is: 'card', then: Joi.number().max(12).min(1).required() }), ExpiryYear: Joi.number().when('type', { is: 'card', then: Joi.number().min(moment().year()).required() }) }), }

This is external validation function
const verifyNumber = async (value, helpers) => { try { const res = db function to check record and it's returning true or false; if (res) { return value } else { return helpers.message("Can't verify number, please contact us.") } } catch (error) { return helpers.message("Can't verify number, please contact us.") } };

In above Schema verifyNumber is my db function where i am verify number with database and return true if success else returning error message. If i use validateAsync in middleware then external validation work but other validation are giving error as mentioned in above details. If i use only validate instead of validateAsync in middleware then it's giving me error Schema with external rules must use validateAsync(). So now my problem is how can i use external and normal validation both by using above middleware?

@Aditya7842 hope you got all details, please check and let me know

from node-express-boilerplate.

userAdityaa avatar userAdityaa commented on June 6, 2024

Kind of a new problem for me. But by doing some document reading i think this can fix your code to use the validateAsync in it.

Screenshot 2023-11-14 at 3 43 54 PM

from node-express-boilerplate.

yachtsman-dev avatar yachtsman-dev commented on June 6, 2024

validateAsync

@Aditya7842 Yes it seems working. But only issue is if error on external validation then it's not giving errors with other validation errors. Once all other validations are fix then on next try it's giving error for external validation.

from node-express-boilerplate.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.