gpt4 book ai didi

node.js - NodeJS Express 和 Mongoose : How to get data from array not in one but in multi table columns

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

我在 mongodb 中有一个列表,我在另一个页面中使用它来将数字放入每个列表集合的数组中。例如:

我有一个输入列表,其中所有有效和无效输入都是正常的,但第一个、第二个和第三个列表来自循环,因此它是动态的,我将模型放入数组中:

allVotes: {
type: Number,
required: true
},

validVotes: {
type: Number,
required: true
},

invalidVotes: {
type: Number,
required: true
},

partyVotes: {
type: [Number], // this goes as array
required: true
}

enter image description here

所以在我的 mongodb 罗盘中它看起来像这样:

enter image description here

现在,当我想制作此内容的表格时,我希望该数组中的数据显示在单独的列中,就像循环中的列表一样,不是在一列中,而是它向我显示的内容:

enter image description here

我认为也许应该是 Schema.Types.ObjectId 而不是数组,并引用该列表,我不知道。

这是我通过数组获得所有内容的代码:

router.get('/', (req, res)=>{
StateResult.count().then(stateResultListCount=>{
res.render('admin/stateResultsLists/index', {
stateResultsLists: stateResultsLists,
});
});
});
});

并且在 View 中这是表的主体:

  <tbody>
{{#each stateResultsLists}}
<tr>
<td>{{allVotes}}</td>
<td>{{validVotes}}</td>
<td>{{invalidVotes}}</td>
<td>{{partyVotes}}</td>

{{/each}}
</tbody>

那么,简单的问题是如何让 5 出现在第一个列表中,2 个出现在第二个列表中,2 个出现在第三个列表中?

最佳答案

我认为您正在寻找的解决方案涉及迭代您的 partyVotes大批。您需要有一个类似的条件来迭代 <th>元素的长度为 partyVotes数组,但我假设您会在其他地方处理它:

<tbody>
{{#each stateResultsLists}}
<tr>
<td>{{allVotes}}</td>
<td>{{validVotes}}</td>
<td>{{invalidVotes}}</td>
{{#each partyVotes}}
<td>{{this}}</td>
{{/each}}
</tr>
{{/each}}
</tbody>

关于node.js - NodeJS Express 和 Mongoose : How to get data from array not in one but in multi table columns,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49495194/

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