Привет! Я недавно закончил проект и заметил, что в коллекции списков создаются дубликаты при первом сохранении элемента в MongoDb. Первый созданный элемент всегда является дубликатом. Пожалуйста, смотрите скриншот прилагается. Есть ли какая-то конкретная причина введите описание изображения здесь почему это так?
что-то вроде этого должно работать:
app.get('/:customListName', async (req, res) => { try { let foundList = await List.findOne({ name: req.params.customListName }); if (!foundList) { const foundList = new List({ name: req.params.customListName, item: defualtItems }); await foundList.save(); res.redirect(`/${req.params.customListName}`); } else { res.render('list', { listTitle: foundList.name, newListItems: foundList.items }); } } catch (error) { res.status(500).json({ error: error.message }); } });
Я рекомендую вам прочитать больше об asyn c, ожидающем при записи и сохранении в базу данных, и об использовании блоков try-catch при обработке ошибок. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/try...catch