代码之家  ›  专栏  ›  技术社区  ›  Arpit Falcon

如何在mongoDB中设置slug

  •  1
  • Arpit Falcon  · 技术社区  · 4 年前

    我试图在MongoDB中创建一组用户待办事项,但我无法做到。

    const mongoose = require('mongoose');
    mongoose.Promise = global.Promise;
    const slug = require('slugs');
    const userSchema = new mongoose.Schema({
        name: {
            type: String,
            trim: true,
            required: 'Please Enter your Name',
        },
        bio: String,
        todos: [
            {
                task: {
                    type: String,
                    trim: true,
                    required: 'Please Enter your Task',
                },
                slug: String,
                dueDate: Date,
                dueTime: String,
            },
        ],
    });
    
    userSchema.pre('save', function (next) {
        if (!this.isModified(this.todos.$.task)) return next();
        this.todos.$.slug = slug(this.todos.$.task);
        next();
    });
    
    module.exports = mongoose.model('User', userSchema);
    
    

    据我所知,这就是你在mongoDB中创建slug的方法。但当我创造 todos 它并没有拯救 slug 在数据库中,其他一切都正常工作。

    0 回复  |  直到 4 年前