Я пытаюсь создать коллекцию Mongo, которая может быть вставлена с клиентской стороны. Когда я вызываю Courses.insert, это удается, но помещает ненужные поля в мою коллекцию.Монгоская коллекция в Метеор вставляет мусор
Код:
/imports/api/createCourse.js
import { Meteor } from 'meteor/meteor'
import { Template } from 'meteor/templating';
import './createCourse.html'
import { Courses } from './collections.js'
if (Meteor.isClient) {
Template.createCourse.events({
'submit #register_form' : function(event) {
var cName = event.target.courseName.value;
var aCode = event.target.accessCode.value;
var aClosedDate = event.target.accessClosedDate.value;
console.log("Course Form Submitted.");
//var cID = new ObjectID;
var toInsert = {
courseID: 1,
ownerID: Meteor.userId(),
courseName: cName,
restrictionMask: 0, //????
accessCode: aCode,
accessClosedDate: aClosedDate,
disabled: false
};
// Courses.schema.validate(toInsert);
console.log("about to insert");
var result = Courses.insert(Meteor.userId(), toInsert);
console.log(result);
}
})
}
/imports/api/collections.js
import { Meteor } from 'meteor/meteor';
import { Mongo } from 'meteor/mongo';
import 'meteor/aldeed:collection2';
export const Courses = new Mongo.Collection("courses");
Courses.allow({
'insert': function (userId) {
return true;
}
})
После того, как я называю Courses.insert(Meteor.userId(), toInsert);
I откройте консоль и просмотрите содержимое коллекции с помощью. 0
Выход метеор консоль:
{ "_id" : "NvcBX7MnSMx2LyJFz", "0" : "m", "1" : "X", "2" : "3", "3" : "H", "4" : "m", "5" : "i", "6" : "C", "7" : "p
", "8" : "p", "9" : "f", "10" : "a", "11" : "H", "12" : "e", "13" : "v", "14" : "9", "15" : "7", "16" : "R" }
Примечание: Everytime вставить в базу данных, то _id отличается, но другие ключевые: ценности являются идентичными независимо от того, какие данные я пытаюсь вставить ,
Javascript выход консоли:
Course Form Submitted.
createCourse.js:33 about to insert
createCourse.js:35 NvcBX7MnSMx2LyJFz
Может кто-то пожалуйста, помогите, чтобы указать, что проблема есть. Я также был бы признателен за любые отзывы о безопасных методах сбора и любых отзывов в целом.
Спасибо, Причина, по которой я использовал userId(), из-за функции «insert»: (userId). Первоначально он был «вставляем»: function (userId, doc). Однако я не понимаю, что именно делает эта функция? Вы можете объяснить? –