Я создаю спортивный сайт, где пользователи могут создавать команды. Я хочу, чтобы новая созданная команда автоматически помещалась в массивы пользователей и лидеров. Но я не могу понять, как запросить вновь созданную Команду, как показано в коде ниже:
const Team = require('../models/Team.js')
const path = require('path')
module.exports = async (req,res)=>{
await Team.create({
... req.body,
teamName: req.body.teamname ,
sportType: req.body.sporttype,
description: req.body.description,
location: req.body.location,
members: [req.session.userId],
leaders: [req.session.userId]
});
const user = await req.session.userId;
const teams = //Request newly created Team
await user.leadership.push(teams)
await user.membership.push(teams)
await user.save()
res.redirect('/')
}
Вот схема для пользователя:
const UserSchema = new Schema({
username: {
type: String,
required: true,
unique: true
},
password: {
type: String,
required: true
},
membership: [{ type: Schema.Types.ObjectId, ref: 'Team' }],
leadership: [{type: Schema.Types.ObjectId, ref: 'Team'}]
});
Вот схема для команды:
const TeamSchema = new Schema({
teamName: String,
sportType: String,
description: String,
location: String,
members: [{ type: Schema.Types.ObjectId, ref: 'User' }],
leaders: [{type: Schema.Types.ObjectId, ref: 'User'}]
})