コードには複数の間違い/変更が必要です。
-
見つけている間、
{}
を与える方が良いです 最初の入力として。 -
ブックテンプレートをレンダリングするときは、
books
を使用しています 書籍のリストを表示する変数ですが、ルートから送信していません。books
を送信する必要がありますres.render
で 。
これを試してください:
router.route('/books')
// Create a book
.post( (req, res) => {
const book = new Book()
book.name = req.body.name
book.save( (err) => {
res.send(err)
console.log('Book created! ')
})
})
//get all books
.get((req, res) => {
Book.find({},(err, books) => {
if (err)
res.send(err)
res.render('books', {title: 'books list' , books : books})//need to send the books variable to the template.
})
})