我在将数据插入到集合时遇到问题,它在控制台中说:错误调用方法'addReservation':内部服务器错误[500] 这是我的预订模板:
<template name="reservations">
<div class="container-fluid registration-form">
<form class="new-reservation">
<div class="row">
<input type="text" name="title"/>
</div>
<button type="submit" class="btn btn-success">Add reservation</button>
</form>
<div class="row">
<div class="col-md-6">
<ul class="list-inline">
{{ #each reserve}}
{{ >reservationForm }}
{{/each}}
</ul>
</div>
</div>
</div>
<template name="reservationForm">
<li>{{title}}</li>
</template>
这是js文件:
NewReservations = new Mongo.Collection('reserve');
isClient中的:
Template.reservations.helpers({
reserve: function(){
return NewReservations.find();
}
});
Template.reservations.events({
'submit .new-reservation': function(event){
var title = event.target.title.value;
Meteor.call("addReservation", title);
event.target.title.value = "";
return false;
}
})
这是isServer
Meteor.methods({
addReservation: function(title){
NewReservations.insert({
title: title
});
}
})
答案 0 :(得分:1)
您的服务器控制台表示未定义NewReservations
,这意味着您的服务器未找到此变量/数据库。我看到的唯一可能的问题是你没有在两个范围内定义你的数据库。我的意思是您可能只在客户端或服务器端定义了db
。
基本上你需要把
NewReservations = new Mongo.Collection('reserve');
在Meteor.isClient
和Meteor.isServer
阻止之外。