Преобразование в ObjectID не выполнено для значения

Довольно грустно, а? Обычно я делаю это, создавая контейнер итераторов вместо удаления во время обхода. Затем прокрутите контейнер и используйте map.erase ()

std::map<K,V> map;
std::list< std::map<K,V>::iterator > iteratorList;

for(auto i : map ){
    if ( needs_removing(i)){
        iteratorList.push_back(i);
    }
}
for(auto i : iteratorList){
    map.erase(*i)
}
0
задан Monica Garud 17 January 2019 в 13:02
поделиться

1 ответ

tags - это массив строк, и вы помещаете в него objectId, поэтому он выдает ошибку. CastError: Ошибка приведения к массиву для значения "['tag1', 'tag2']" в пути "tags"

[ 112] Есть несколько решений, которые вы можете реализовать согласно вашему требованию. см. пример ниже.

var tags = req.body.tags;
    var tagsObjectId=[];
    tags.forEach((item, index) => {
        Tag.findOne({name: item}, (err,result)=> {
          if(!err){
             tagsObjectId.push(result._id)
          }
        });
     })
0
ответ дан Monica Garud 17 January 2019 в 13:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: