'Is the value of `null` allowed for fields that are required?

In MongoDB, what does it mean to have the required = true condition for a field in a collection?

Can the value be null?



Solution 1:[1]

required = true seems to be using Mongoose, so it doesn't accepts null values.

By default, a value satisfies the required validator if val != null (that is, if the value is not null nor undefined).

Can be found in their docs: https://mongoosejs.com/docs/api.html#schematype_SchemaType-required

MongoDB has a similar approach, but you declare all fields in the required option

i.e.:

...
required: [ "name", "year", "major", "address" ]
...

More can be found here

Solution 2:[2]

No value cannot be null, required: true will throw an error if null value is passed to the field on which required is implemented.

As per Mongoose documentation on required

By default, a value satisfies the required validator if val != null (that is, if the value is not null nor undefined)

Keep in mind, that's the default behavior, so there is a possibility for custom implementation.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Alexander Santos
Solution 2 Shivam