for value undefined at path " <--
                  
                  
                  Задача: получить коллекцию с БД, Если ее нету - вернуть пустой массив.
                  
                  
                  
                  
                  
                  Есть модель:
                  
                  
                  const Soldier = new mongoose.Schema({
                  
                  
                    title: {
                  
                  
                      type: String,
                  
                  
                      required: true
                  
                  
                    },
                  
                  
                    image: {
                  
                  
                      type: String,
                  
                  
                      required: true
                  
                  
                    },
                  
                  
                    rank: {
                  
                  
                      type: String,
                  
                  
                      required: true
                  
                  
                    }, 
                  
                  
                    status: {
                  
                  
                      type: String,
                  
                  
                      default: '1'
                  
                  
                    },
                  
                  
                    created_at: {
                  
                  
                      type: Date,
                  
                  
                      default: new Date()
                  
                  
                    },
                  
                  
                    updated_at: {
                  
                  
                      type: Date,
                  
                  
                      default: new Date()
                  
                  
                    }
                  
                  
                  })
                  
                  
                  export default mongoose.model('Soldier', Soldier)
                  
                  
                  
                  
                  
                  Есть сервис:
                  
                  
                  export const getSoldiers = async ({
                  
                  
                    offset = 0,
                  
                  
                    limit = 9
                  
                  
                  }) => Soldier.find({}, null, {
                  
                  
                    skip: parseInt(offset),
                  
                  
                    limit: parseInt(limit)
                  
                  
                  })
                  
                  
                  
                  
                  
                  Есть контроллер:
                  
                  
                  export const SoldiersListController = async (request, response, next) => {
                  
                  
                    try {
                  
                  
                      const { offset, limit } = request.query
                  
                  
                      const soldiers = await getSoldiers({
                  
                  
                        offset,
                  
                  
                        limit
                  
                  
                      })
                  
                  
                      return response
                  
                  
                        .status(200)
                  
                  
                        .json({
                  
                  
                          status: true,
                  
                  
                          soldiers: Array.isArray(soldiers) 
                  
                  
                            ? soldiers.map(soldier => SoldiersListItemMapper(soldier)) 
                  
                  
                            : []
                  
                  
                        })
                  
                  
                    } catch (error) {
                  
                  
                      next(error)
                  
                  
                    }
                  
                  
                    return response
                  
                  
                      .status(200)
                  
                  
                      .json({
                  
                  
                        success: true,
                  
                  
                        data
                  
                  
                      })
                  
                  
                  }
                  
                  
                
так ведь все то же самое что и выше предлагал, ищите где у вас не проинициализированы переменные или обращение к неправильным полям
 Artem
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Artem
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  Так, дело в том, что все нормально проинициализировано. Там несколько полей. Я переписывал модель и переписывал функции модели, переписывал контроллер, роуты. Похожий модуль - работает без проблем и получает список объектов, если такой есть в базе, а если нет - пустой массив. Все аналогично и с коллекией «soldiers», но не могу получить из-за ошибки —> Error: Cast to undefined failed for value undefined at path " <--
Обсуждают сегодня