I need to be able to increment and decrement the position of an element of an array in a MongoDB object.
I looked at the <update> API in the MongoDB API but could not find anything to let me do so.
I am trying to use findOneAndUpdate through Mongoose and I know the index of the element I am trying to shift up or down.
An example of the array item of base64 encoded images:
{
images: [
"img1",
"img2",
"img3"
]
}
And I would like to move, for example "img2", up or down (but "image" should not be able to pushed up since there is nowhere to go).
If I wanted to push "img2" up then the result would be:
{
images: [
"img2",
"img1",
"img3"
]
}
It doesn't matter if I achieve this through changing the index, swapping, or pushing up/down.
base64images are as simple content as["img1", "img2", "img3]and are of course complex encoded strings. So it's important to people to know whether or not this is just plain "base64" data directly in each array index, or whether it resides inside another document, with some identifier or key.