
Defaults
========

Each `SchemaType` that you define \(you can read more about them in the [model
definition chapter](/docs/model-definition.html) \) can have a default value.

Default values are applied when the document skeleton is constructed. This
means that if you create a new document (`new MyModel`) or if you find an
existing document (`MyModel.findById`), both will have defaults
provided that a certain key is missing.

## Definition

You can define a default with a function:

    new Schema({
        date: { type: Date, default: Date.now }
    })

or a value:

    new Schema({
        date: { type: Date, default: '12/10/1990' }
    })

Notice that defaults are automatically casted. In both cases, the defaults will
become actual `Date` objects, but we're passing a timestamp first, and a string
date second.
