调用方法'addReservation'时出错:内部服务器错误[500]

时间:2016-01-20 10:01:16

标签: javascript meteor

我在将数据插入到集合时遇到问题,它在控制台中说:错误调用方法'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
            });
        }
    })

我删除了不安全和自动发布。 enter image description here

1 个答案:

答案 0 :(得分:1)

您的服务器控制台表示未定义NewReservations,这意味着您的服务器未找到此变量/数据库。我看到的唯一可能的问题是你没有在两个范围内定义你的数据库。我的意思是您可能只在客户端或服务器端定义了db

基本上你需要把

NewReservations = new Mongo.Collection('reserve');

Meteor.isClientMeteor.isServer阻止之外。