我使用Meteor和AutoForm& amp;铁路由器。
我有一个用于插入记录的autoform,我想在成功插入后重定向到另一个页面以查看记录。 普遍接受的方式是什么?
如果我使用标准的autoform插件,如:
{{#autoForm collection="Articles" id="articleSubmit" type="insert"}}
我无法看到如何重定向?
如果我使用'方法'像这样打字:
{{#autoForm collection="Articles" id="articleSubmit" type="method"}}
然后我必须编写一个不特别干的插入方法。
答案 0 :(得分:6)
表单是一种表单,如果您使用type="method"
表示您使用的是Meteor.method
,表单将为您处理,Meteor.call
现在如果你想做一些Router.go()
,你需要编写一些JS代码,你可以使用钩子,它带有autoform包,例如这样的
Articles.hooks({
contactForm: {
onSubmit: function (insertDoc, updateDoc, currentDoc) {
if (someHandler(insertDoc)) {
this.done();
Articles.clean(doc); / you can do more logic here, cleaning the form.
Router.go('thePath');
} else {
this.done(new Error("Submission failed"));
}
return false;
}
}
});
因此,您不需要使用通用'submit #articleSubmit'
更好地使用自动表单API。