gpt4 book ai didi

node.js - SequelizeInstance 对象未在 Express Handlebars View 中呈现(NodeJS、Express)

转载 作者:太空宇宙 更新时间:2023-11-04 01:57:28 24 4
gpt4 key购买 nike

使用 NodeJS、Express 和 Sequilize,

我在 View [object SequelizeInstance:Todo] 中渲染,与使用 res.render() 调用时的实际数据实例值相反,但是当通过 .send 调用时(请参阅下面的注释行),数据实例值将发送到 View 。

exports.test_todo_view = function(req, res) {
return Todo
.findAll({
//attributes: ['id'] //select fields
})
//.then((todos) => res.status(200).send(todos))
.then((todos) => res.render('test/test_view', {layout: 'ca_layout.handlebars', test_data: todos}))
.catch((error) => res.status(400).send(error));
}

数据库中每个条目的输出为[object SequelizeInstance:Todo]。

有人可以建议吗?它有效,即我可以看到数据 - [{"id":1,"title":"fasdfsd","createdAt":"2017-11-15",...] 当我使用 .send(todos) 时,如图所示。

我正在使用下面的代码来调用 View 。

app.get('/test/view', authCarePlan.test_todo_view);

我的 .handlebars 文件如下所示

<div>test_data:{{test_data}}</div>

我希望查询输出作为 test_data 出现

最佳答案

.handlebars View 中需要以下配置

{{#test_data}}
{{title}}
{{/test_data}}

其中 test_data 是变量占位符的名称,title 是其中字段的名称。

关于node.js - SequelizeInstance 对象未在 Express Handlebars View 中呈现(NodeJS、Express),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47329827/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com