Метод PUT с экспресс-секвестированием - PullRequest
0 голосов
/ 24 февраля 2019

Я застрял в методе PUT для обновления данных с помощью req.params.id, я попытался получить данные по идентификатору, а затем он отображает данные поиска пользователя id в таблице форм, а затем, когда они изменилисьзначение его, это должно быть обновление базы данных tp

вот мой код:

router.put('/:id' , (req,res, next)=> {
  Student.findById(+req.params.id)
  .then(data => {
    let arr = data.dataValues;
    res.render('edit', {
      files : arr
    })
  })
  .catch(err => {
    res.status(404).send('something went wrong');
  })

  const  theKey = key => key || undefined
    const {first_name, last_name, email } = req.body
    let obj = {
      first_name : theKey(first_name),
      last_name: theKey(last_name),
      email: theKey(email),
      createdAt: new Date(),
      updatedAt: new Date()
    }
    Student.update(obj,
        { returning: true,
          where: {
            id : req.params.id
          }
        })
    .then(updated => {
      res.send(`updated`)
    })
})

в моем app.js

app.use('/students/edit', editstudent )

это действительно обновить данныепосле того, как я перехожу к маршрутизатору, мой список студентов в базе данных, что-то не так с моим методом PUT ??

1 Ответ

0 голосов
/ 24 февраля 2019
res.render('edit', {
  files : arr
})
.then(updated => {
  res.send(`updated`)
})

Причина, по которой студент не обновляется, заключается в том, что первый блок кода выполняется и отвечает клиенту перед выполнением кода обновления.Я думаю, что вы должны сделать страницу после обновления студента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...