• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

183
Views
Skip validation for one field, not all the schema

I have the following long schema:

const mySchema = new mongoose.Schema({
  // some stuff, email, lastName ... etc
  firstName: {
    type: String,
    required: true,
  }
  password: {
    type: String,
    minLength: 8,
    maxLength: 120,
  }
})

And I am inside one of the routes, I want to save a document that I am editing, but I only want to skip one validation, not the entire schema, I want to skip the validation for the firstName field, but I want the rest of the fields to be validated.

Is there something that I can do in Mongoose such as:

userDoc.firstName = "new first name";
const newDoc = await userDoc.save({ validateBeforeSave: yes, but not for firstName })

Is there something like that?

about 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

According to Mongoose documentation, there is a method called $ignore:

Don't run validation on this path or persist changes to this path.

Example:

doc.foo = null;
doc.$ignore('foo');
doc.save(); // changes to foo will not be persisted and validators won't be run
about 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error