User.js•790 B
const mongoose = require('mongoose');
const userSchema = new mongoose.Schema(
{
name: {
type: String,
required: [true, 'Please add a name'],
},
email: {
type: String,
required: [true, 'Please add an email'],
unique: true,
match: [
/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/,
'Please add a valid email',
],
},
password: {
type: String,
required: [true, 'Please add a password'],
minlength: 6,
select: false,
},
role: {
type: String,
enum: ['user', 'admin'],
default: 'user',
},
apiKey: {
type: String,
unique: true,
sparse: true,
},
},
{
timestamps: true,
}
);
module.exports = mongoose.model('User', userSchema);