После того, как запись сохранена в базе данных, как мне перейти на другую страницу ejs - PullRequest
0 голосов
/ 17 декабря 2018

Как я могу загрузить другую страницу после публикации в node.js с помощью ejs.

//router
function router() {
   ticketRouter.route("/create/submit") // tied to submit from one ejs
      .post(dataControllerThatTakesCareOfThis) // works fine

    // either in here, or even the controller I suppose I want to load another page after the submit takes place?
     res.redirect(200, '/load:postSubmit') // doesn't work
     res.send({ redirect: '/load:postSubmit' }) // great for ajax response only

}

module.exports = router;

Так же, как и выше, вы можете сделать что-то в node.js, не возвращаясь к клиентус какой-то информацией, а затем задать вопрос, чтобы обработать его?Существует ли перенаправление или способ маршрутизации ответа, подобного этому?

Спасибо

1 Ответ

0 голосов
/ 17 декабря 2018

Предположим, что вы используете ExpressJS, а EJS - ваш движок шаблонов:

Вы должны обработать перенаправление в функцию dataControllerThatTakesCareOfThis .

Эти две строки:

// either in here, or even the controller I suppose I want to load another page after the submit takes place?
 res.redirect(200, '/load:postSubmit') // doesn't work
 res.send({ redirect: '/load:postSubmit' }) // great for ajax response only

Не будет работать, потому что они используют объект res , который не определен здесь, но в обратном вызове метода Post объекта Router.

Подробнее в экспресс-документации

...