Как заполнить Вопросы, которые задает пользователь, используя виртуальное заполнение? - PullRequest
0 голосов
/ 16 июня 2019

Есть две схемы пользователей и вопросы. Пользователь может задавать вопросы и схемы. В схеме есть поле пользователя, в котором хранятся идентификатор и имя пользователя. Теперь я хочу заполнить все вопросы, которые задает пользователь.

Я бы попробовал виртуальное заполнение с помощью мангуста, но оно не работает. помогите мне в этой проблеме. Спасибо

USER Schema

const mongoose = require('mongoose');
const passportLocalMongoose = require('passport-local-mongoose');
const Question = require('../models/question');

const userSchema = mongoose.Schema({
    name: {
        type: String
    },
    email: {
        type: String
    },
    password: {
        type: String
    }
})

userSchema.plugin(passportLocalMongoose);

userSchema.virtual('ques', {
    ref: 'Question',
    localField: '_id',
    foreignField: 'user.id'
})
const User = mongoose.model('User', userSchema);


module.exports = User;

Схема ВОПРОСА

const mongoose = require('mongoose');

const questionSchema = mongoose.Schema({
    title: {
        type: String
    },
    description: {
        type: String
    },
    answers: [{
        type: mongoose.Schema.Types.ObjectId,
        ref: 'Answer'
    }],
    user: {
        id: {
            type: mongoose.Schema.Types.ObjectId,
            ref: 'User'
        },
        username: String
    }
}, {
    timestamps: true
})

const Question = mongoose.model('Question', questionSchema);

module.exports = Question;
...