I have a collection that looks like this. Each Object within "days" is it's own "day" document. It is not broken down further than that. Here is the structure:
days: [
{
day: 'Sunday',
slots: [
{time: '12:00am', event: null}, {time: '1:00am', event: null}, {time: '2:00am', event: null}, {time: '3:00am', event: null},
{time: '4:00am', event: null}, {time: '5:00am', event: null}, {time: '6:00am', event: null}, {time: '7:00am', event: null},
{time: '8:00am', event: null}, {time: '9:00am', event: null}, {time: '10:00am', event: null}, {time: '11:00am', event: null},
{time: '12:00pm', event: null}, {time: '1:00pm', event: null}, {time: '2:00pm', event: null}, {time: '3:00pm', event: null},
{time: '4:00pm', event: null}, {time: '5:00pm', event: null}, {time: '6:00pm', event: null}, {time: '7:00pm', event: null},
{time: '8:00pm', event: null}, {time: '9:00pm', event: null}, {time: '10:00pm', event: null}, {time: '11:00pm', event: null},
]
},
{
day: 'Monday',
slots: [
{time: '12:00am', event: null}, {time: '1:00am', event: null}, {time: '2:00am', event: null}, {time: '3:00am', event: null},
{time: '4:00am', event: null}, {time: '5:00am', event: null}, {time: '6:00am', event: null}, {time: '7:00am', event: null},
{time: '8:00am', event: null}, {time: '9:00am', event: null}, {time: '10:00am', event: null}, {time: '11:00am', event: null},
{time: '12:00pm', event: null}, {time: '1:00pm', event: null}, {time: '2:00pm', event: null}, {time: '3:00pm', event: null},
{time: '4:00pm', event: null}, {time: '5:00pm', event: null}, {time: '6:00pm', event: null}, {time: '7:00pm', event: null},
{time: '8:00pm', event: null}, {time: '9:00pm', event: null}, {time: '10:00pm', event: null}, {time: '11:00pm', event: null},
]
},
{
day: 'Tuesday',
slots: [
{time: '12:00am', event: null}, {time: '1:00am', event: null}, {time: '2:00am', event: null}, {time: '3:00am', event: null},
{time: '4:00am', event: null}, {time: '5:00am', event: null}, {time: '6:00am', event: null}, {time: '7:00am', event: null},
{time: '8:00am', event: null}, {time: '9:00am', event: null}, {time: '10:00am', event: null}, {time: '11:00am', event: null},
{time: '12:00pm', event: null}, {time: '1:00pm', event: null}, {time: '2:00pm', event: null}, {time: '3:00pm', event: null},
{time: '4:00pm', event: null}, {time: '5:00pm', event: null}, {time: '6:00pm', event: null}, {time: '7:00pm', event: null},
{time: '8:00pm', event: null}, {time: '9:00pm', event: null}, {time: '10:00pm', event: null}, {time: '11:00pm', event: null},
]
},
{
day: 'Wednesday',
slots: [
{time: '12:00am', event: null}, {time: '1:00am', event: null}, {time: '2:00am', event: null}, {time: '3:00am', event: null},
{time: '4:00am', event: null}, {time: '5:00am', event: null}, {time: '6:00am', event: null}, {time: '7:00am', event: null},
{time: '8:00am', event: null}, {time: '9:00am', event: null}, {time: '10:00am', event: null}, {time: '11:00am', event: null},
{time: '12:00pm', event: null}, {time: '1:00pm', event: null}, {time: '2:00pm', event: null}, {time: '3:00pm', event: null},
{time: '4:00pm', event: null}, {time: '5:00pm', event: null}, {time: '6:00pm', event: null}, {time: '7:00pm', event: null},
{time: '8:00pm', event: null}, {time: '9:00pm', event: null}, {time: '10:00pm', event: null}, {time: '11:00pm', event: null},
]
},
{
day: 'Thursday',
slots: [
{time: '12:00am', event: null}, {time: '1:00am', event: null}, {time: '2:00am', event: null}, {time: '3:00am', event: null},
{time: '4:00am', event: null}, {time: '5:00am', event: null}, {time: '6:00am', event: null}, {time: '7:00am', event: null},
{time: '8:00am', event: null}, {time: '9:00am', event: null}, {time: '10:00am', event: null}, {time: '11:00am', event: null},
{time: '12:00pm', event: null}, {time: '1:00pm', event: null}, {time: '2:00pm', event: null}, {time: '3:00pm', event: null},
{time: '4:00pm', event: null}, {time: '5:00pm', event: null}, {time: '6:00pm', event: null}, {time: '7:00pm', event: null},
{time: '8:00pm', event: null}, {time: '9:00pm', event: null}, {time: '10:00pm', event: null}, {time: '11:00pm', event: null},
]
},
{
day: 'Friday',
slots: [
{time: '12:00am', event: null}, {time: '1:00am', event: null}, {time: '2:00am', event: null}, {time: '3:00am', event: null},
{time: '4:00am', event: null}, {time: '5:00am', event: null}, {time: '6:00am', event: null}, {time: '7:00am', event: null},
{time: '8:00am', event: null}, {time: '9:00am', event: null}, {time: '10:00am', event: null}, {time: '11:00am', event: null},
{time: '12:00pm', event: null}, {time: '1:00pm', event: null}, {time: '2:00pm', event: null}, {time: '3:00pm', event: null},
{time: '4:00pm', event: null}, {time: '5:00pm', event: null}, {time: '6:00pm', event: null}, {time: '7:00pm', event: null},
{time: '8:00pm', event: null}, {time: '9:00pm', event: null}, {time: '10:00pm', event: null}, {time: '11:00pm', event: null},
]
},
{
day: 'Saturday',
slots: [
{time: '12:00am', event: null}, {time: '1:00am', event: null}, {time: '2:00am', event: null}, {time: '3:00am', event: null},
{time: '4:00am', event: null}, {time: '5:00am', event: null}, {time: '6:00am', event: null}, {time: '7:00am', event: null},
{time: '8:00am', event: null}, {time: '9:00am', event: null}, {time: '10:00am', event: null}, {time: '11:00am', event: null},
{time: '12:00pm', event: null}, {time: '1:00pm', event: null}, {time: '2:00pm', event: null}, {time: '3:00pm', event: null},
{time: '4:00pm', event: null}, {time: '5:00pm', event: null}, {time: '6:00pm', event: null}, {time: '7:00pm', event: null},
{time: '8:00pm', event: null}, {time: '9:00pm', event: null}, {time: '10:00pm', event: null}, {time: '11:00pm', event: null},
]
}
]
I would like to edit the event field that is nested inside this json. How would I got about doing that? I have a Day model. But it's not broken down further than that. I was thinking of using findOneAndUpdate, but I'm can't figure out how to drill down so I'm in the proper time slot. The endpoint has access to the day, the time and the value to set event to.