如何从流星中的mongo集合中检索数据?

时间:2018-07-23 14:04:14

标签: mongodb meteor collections fullcalendar

Events = new Mongo.Collection('event');
Template.newEvent.onRendered(function(){
        $('.newEvent').validate({
            submitHandler : function() {
                var currentUser = Meteor.userId();
                var module = $('[name="module"]').val();
                var date = event.target.date.value;
                var month = event.target.month.value;
                var year = event.target.year.value;
                var startTime = event.target.startTime.value;
                var endTime = event.target.endTime.value;
                var type = event.target.type.value;
                var description = event.target.description.value;
                Events.insert({
                        module: module.toUpperCase(),
                        date: date,
                        month: month,
                        year: year,
                        startTime: startTime,
                        endTime: endTime,
                        type: type,
                        description: description,
                        createdBy: currentUser,
                        startDate: new Date(year, month-1, date, startTime),
                        endDate: new Date(year, month-1, date, endTime),
                        title: module + " " + type
                    });
                    var print = ("Event Created!\n" +
                        "Module: " + module + "\n" +
                        "Date: " + date + "/" + month + "/" + year + "\n" +
                        "From: " + startTime + "00 To: " + endTime + "00\n" +
                        "Type: " + type + "\n" +
                        "Description: " + description);
                    alert(print);
            }
        })
    });

我和我的朋友试图创建一个Web应用程序来学习。 因此,我们在MongoDB中创建了一个以日历事件为对象的集合。我们在网络应用程序中使用FullCalendar API。但是,我们无法在JavaScript文件夹中检索数据以将其放入日历API中以在日历上显示事件。我们被告知 Collections.find({module:“ Math”})。month 应该可以工作,但是当我们无法使它工作以及在控制台上尝试它时,它会返回未定义的状态。

我们还被告知要从PHP文件加载数据,但是我们不熟悉在加载之前将数据上传到PHP文件的过程。

我们也尝试过 Collections.find()。toArray(),但仍无法使用array [0] .startTime检索信息,该信息已经在数据库中。

我们的目标基本上是获取用户条目并检索String输入,以在FullCalendar上创建具有给定详细信息的事件。

1 个答案:

答案 0 :(得分:0)

要仅获取1个文档,您必须使用findOnefind().fetch()[0]。 除此之外,也许您需要阅读有关Publications and Data Loading

的信息
const myEvent = Events.findOne({module: "Math"});
let month  = myEvent ? myEvent.month : 0