Функция конечной точки Express PUT продолжает возвращать неопределенный - PullRequest
0 голосов

Я использую библиотеки Knex и bookshelf для экспресс-написания своих конечных точек.Я все еще довольно нов в написании конечных точек PUT, и та, которую я пытаюсь написать, продолжает возвращаться как неопределенная.Мои файлы разделены на маршруты и контроллеры.

Маршрут:

 app.put('/studentList/:id', (req,res)=>{
         students.editStatus(req.params.id)            
        .then((student) => { res.send(student.attributes) })

  })

, а контроллер:

exports.editStatus=(id)=>{
  console.log(id)
  const fieldToUpdate={status:'in'}
  new Student({id:id})
  .save(fieldToUpdate)
  .then(saved=>{
        console.log(saved)
        return saved;
  }).catch(err=>{
        console.log(err)
  })

}

Я пытаюсь вернуть отредактированную информацию об ученике обратно в интерфейс, но получаю -

Невозможно прочитать свойство 'then' из неопределенного

IЗаписанная консоль сохранена в функции editStatus и показывает

ModelBase {
  attributes: { id: '5', status: 'in' },
  _previousAttributes: { id: '5', status: 'in' },
  changed: {},
  relations: {},
  cid: 'c2',
  id: '5',
  _knex: null }

Но это значение, похоже, не выходит из функции

...