У меня возникают проблемы с вставкой родительского идентификатора в autoform с метеор. Я использую AUTOFORM крюк:Проблемы с вставкой родительского идентификатора в autoform с метеорным
Template.NewLecture.onRendered(function(){
AutoForm.hooks({
insertLectureForm: {
insert: {
method: function(doc) {
doc.courseId = Template.parentData(1)._id;
return doc;
}
}
}
});
});
Template.parentData (1) ._ идентификатор правильно возвращает правильный идентификатор, но это не похоже, чтобы сохранить в документ. Это шаблон:
<template name="NewLecture">
<div class="new-lecture-container">
{{> quickForm collection='Lectures' id='insertLectureForm' type="insert" class="new-lecture-form"}}
</div>
</template>
Это схема:
LectureSchema = new SimpleSchema({
name: {
type: String,
label: "Lecture",
optional: true
},
courseId: {
type: String,
label: "CourseId",
autoform: {
type: "hidden"
}
optional: true
}
});
Lectures.attachSchema(LectureSchema);
Что именно я здесь отсутствует? Лекция вставляет отлично, за исключением courseId, является черным. Если я использую крючки автоформы, чтобы установить значение courseId, как я должен устанавливать его в схеме, чтобы принять это? Благодаря!
EDIT: Я не решил его, но проблема заключается в том, что Template.parentData (1) ._ id не возвращает то же самое внутри метода вставки, что и внутри секции onRender. Используя этот новый крючок:
Template.NewLecture.onRendered(function(){
console.log(Template.parentData(1))
AutoForm.hooks({
insertLectureForm: {
before: {
insert: function(doc) {
doc.courseId = Template.parentData(1)._id;
console.log(Template.parentData(0))
console.log(Template.parentData(1))
console.log(Template.parentData(2))
console.log(Template.parentData(3))
console.log(doc)
return doc;
}
}
}
});
});
я получаю этот выход: Итак, ясно, что первый и третий console.logs не совпадают здесь. Как я могу либо передать содержимое первого журнала консоли в этот крючок, либо получить его?
Попробуйте один раз удаление 'autoValue' option.Also вы уверены, что' метод: function' ?? Попробуйте один раз с 'before: { Вставить функцию (doc) {' –
Дайте мне знать, если ни один из них не работает –