1
我正在尝试创建我的第一个Meteor应用程序,并且卡在什么应该是一个简单的过程。这里是我用来首先设置数据库的插入;
income.insert({income_acct_name: "Account 1", income_acct_budget: 0, income_acct_total: 0});
income.insert({income_acct_name: "Account 2", income_acct_budget: 0, income_acct_total: 0});
income.insert({income_acct_name: "Account 3", income_acct_budget: 0, income_acct_total: 0});
这里是模板;
<template name="income">
{{#each accounts}}
<tr>
<td class="row1"><input type="text" value="{{income_acct_name}}"></td>
<td class="row2"><input type="text" value="{{income_acct_budget}}"></td>
<td class="row3">0%</td>
<td class="row4"><input type="text" value="0" id="income_amt_entered"></td>
<td class="row5">$ </td>
<td class="row6"> - </td>
<td class="row7"></td>
</tr>
{{/each}}
</template>
并且这是引发错误的助手;
Template.income.events ({
'change td.row4': function(theEvent, theTemplate) {
var rowId = this._id;
Session.set('changedRow', rowId);
var changedRow = Session.get('changedRow');
var amount = theTemplate.find('#income_amt_entered').value;
income.update (
{"_id": changedRow},
{$inc: {"income_acct_total": amount}}
)
//console.log(amount);
}
});
所以在我的形式,我在ROW4输入金额45.50喜欢更新“income_acct_total”,我得到这个错误。我使用的是与正在工作的Leader Board应用程序几乎相同的代码。输入的金额在控制台日志中正确显示。
也做到了。我希望将输入验证保存到应用程序中,以便在开始时保持简单。猜猜我不能那样做。非常感谢! – 2014-09-29 15:20:48
$ inc期望数字不是字符串。这就是原因。 – 2014-09-29 15:26:41