我的架构类似于:
Schema.Adviser = new SimpleSchema({
"firstName": {
type: String
}
});
Schema.Orders = new SimpleSchema({
"adviserId": {
type: Object
},
"period": {
type: Date
},
"order": {
type: Number,
min: 0
}
});
我需要渲染一个这样的表:
名字|一月|二月
鲍勃| 1 | 0 比尔| 0 | 1每个值都是可编辑的输入字段。
例如,如果一月份Bob没有订单记录,我需要1月仍然呈现,理想情况下为0,这样有人可以添加1月订单。
这样的事情:
月是要显示的一系列月份。每种格式均遵循以下格式:Mon Feb 01 2016 00:00:00 GMT + 0000
{{#each month in months}}
{{#each getOrders}}
{{#if equals month period}}{{order}}{{/else}}0{{/if}}
{{/each}}
{{/each}}
我不仅无法使用它,而且在花费更多时间尝试调试问题之前,我想知道这是否真的是最好的方法。
有什么建议吗?
非常感谢
答案 0 :(得分:1)
find /var/www/html/test2 -type f -print0 | xargs -0 sed -i '/model\..*(?:(?!^.:[ ])[\s\S])*\\)/{s//model./g}'

我认为这样做的一个更简洁的方法是创建一个getAdvisors帮助程序,它将处理和转换数据并返回类似
的内容var months = ['Jan', 'Feb', 'Mar'];
var advisors = [{
ID: 1,
name: 'Bob'
}];
var emptyMonthArray = [0, 0, 0];
orders = [{
advisorID: 1,
period: new Date(),
order: 3
}];
function getAdvisors() {
var returnArray = [];
advisors.forEach(function(a) {
var returnObject = {
name: a.name,
monthData: emptyMonthArray.slice(0)
};
orders.forEach(function(o, i) {
if (o.advisorID === a.ID) {
returnObject.monthData[o.period.getMonth()] = o.order;
}
});
returnArray.push(returnObject);
});
return returnArray;
}
console.log(getAdvisors());
可以在模板中表达这样的内容:
[
{name:'Bill', monthData:[0,1,0,2,...]},
{name: 'Bob', monthData:[...]}
]
编辑:添加了一个小提琴https://jsfiddle.net/runjep/1xrp1gfq/(这只会在一年的前3个月起作用;-)之后你必须添加' Apr',...
使用你的小提琴https://jsfiddle.net/runjep/0qy34pfe/3/再次编辑 不幸的是,meteorpad已经失败,所以我认为这将起作用。
<tr>
<th>Name</th>
{{#each month in months}}
<th> {{monthname}}</th>
{{end each}}
</tr>
{{#each advisor in getAdvisors }}
<tr>
<td>{{name}}</td>
{{#each monthData in advisor}}
{{td>{{this}}</td>
{{end each}}
</tr>
{{end each}}