Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const userSchema = new mongoose.Schema({
- "email": { type: String, required: true, unique: true, trim: true },
- "username": { type: String, required: true, unique: true },
- "name": {
- "first": String,
- "last": String
- },
- "password": { type: String, required: true },
- "created_at": { type: Date, default: Date.now },
- "updated_at": { type: String }
- })
- userSchema.pre("save", function(next) {
- var user = this
- if (!user.isModified('password')) return callback()
- bcrypt.genSalt(10, function(err, salt) {
- if (err) return next(err)
- bcrypt.hash(user.password, salt, function(err, hash) {
- if (err) return next(err)
- user.password = hash
- console.log(user.password)
- })
- })
- const currentDate = new Date
- user.updated_at = currentDate
- next()
- })
- const User = mongoose.model("users", userSchema)
- export default User
- router.route("/users").post((req, res) => {
- let json = {}
- const newUser = new User({
- username: req.body.username,
- email: req.body.email,
- name: {
- first: req.body.firstName,
- last: req.body.lastName
- },
- password: req.body.password
- })
- newUser.save((err) => {
- if (err) {
- json.error = err.message
- } else {
- json.id = newUser._id
- }
- res.json(json)
- })
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement