定义了mongoose schemaType的get:方法,在获取单个信息的时候有用,获取一个数组列表就无效了

新手上路,请多包涵

定义了mongoose schemaType的get:方法,用来格式化时间,在使用findOne() 获取单个信息的时候有用。
但是使用find(),获取一个数组列表就无效了

'use strict'
const mongoose = require('mongoose')
const moment = require('moment')
const Schema = mongoose.Schema
const UserSchema = new Schema({
    name: {
        type: String,
        required: '请填写用户名称'
    },
    password: {
        type: String
    },
    createdAt: {
        type: Date,
        default: Date.now,
        get(val){
            return moment(val).format('YYYY-MM-DD HH:mm:ss');
        }
    },
    updatedAt: {
        type: Date,
        default: Date.now,
        get(val){
            return moment(val).format('YYYY-MM-DD HH:mm:ss');
        }
    }
}, {
    timestamps: {
        createdAt: 'createdAt',
        updatedAt: 'updatedAt'
    },
    toJSON:{
        getters:true,
        virtuals:true
    },
    toObject:{
        getters:true,
        virtuals:true
    }
})

/*
UserSchema.set('toJSON', {
    getters: true,
    virtuals: true
})
UserSchema.set('toObject', {
    getters: true,
    virtuals: true
})
*/

module.exports = mongoose.model('Users', UserSchema)

以上代码这么尝试,是哪里出了问题呢

阅读 1.6k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题