gpt4 book ai didi

javascript - Sails.js - 将数据传递给 View

转载 作者:IT老高 更新时间:2023-10-28 23:16:34 24 4
gpt4 key购买 nike

我最近开始学习如何使用 Sails.js,遇到了一个小问题。

我有一个模型叫申请人,如下:

module.exports = {

attributes: {
name: {
type: 'STRING',
required: true
},

email: {
type: 'STRING',
required: true
}

}

};

我已经构建了索引操作来返回申请人模型的所有实例:

module.exports = {
index: function(req, res) {
Applicant.findAll().done(function(err, applicants) {
res.view({
apps: applicants
});
});
}
};

这是我正在使用的 View :

<section id="applicants">
<h1>List of applicants</h1>

<ul>
<% for (applicant in apps) { %>
<li><%= applicant.name %> <%= applicant.email %></li>
<% } %>
</ul>
</section>

不过,当我加载相应的 URL 时,我看不到我的数据显示。

我已阅读 Sails.js 文档,但似乎找不到我的代码有什么问题。

如果有人能帮我解决这个问题,那就太好了。

谢谢!

最佳答案

试试

<%= apps[applicant].name %>

就像 for 循环一样。 applicantapps 数组中的索引。

编辑:更好的方法是使用javascript数组的内置方法forEach,因为这样可以避免循环遍历从apps继承的元素的类型(例如,元素,分配如下: apps.__proto__.foo = {name: "bar"}Array.prototype.foo2 = {name: "pi222"} )。

<% apps.forEach(function(applicant)  { %>
<li><%= applicant.name %> <%= applicant.email %></li>
<% }); %>

附:当然,这个 javascript 的方法 (forEach) 在 IE <= 8 中不起作用(如果您考虑在浏览器中使用它)。 但是我们在 NodeJs 中,它是建立在 V8 引擎之上的。无论如何,这将起作用。

关于javascript - Sails.js - 将数据传递给 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18229908/

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