我是meteor的新手,我有两个名为Employee和Visitors的集合。还有两个模板Home和Print。我可以从这个按钮中获取记录的ID。
printVisitor:function(){
return Visitor.findOne({_id:Session.get('UpdateVisitorId')});
}
现在,当我点击重定向到另一个页面的按钮时,我需要打印这些值,使用我可以从上面的代码获得的特定记录ID来说出姓名,电话号码。 我的路线代码看起来像这样
Router.route('/print/:_id', {
名称:' print', 控制器:' PrintController', 行动:'行动', 其中:'客户' });
我的打印html就是这个
<template name="Print">
This is: {{VisitorName}}
Visiting:{{EmployeeName}}
Phone:{{PhoneNumber}}
我如何发布和订阅并打印那个id的某些值
答案 0 :(得分:1)
发布和订阅可以带参数。您还希望使用this.params
来获取网址参数。这是一般模式
Router.route('/foo/:_id', {
name: 'foo',
waitOn: function(){
// this grabs the ID from the URL
var someId = this.params._id;
// this subscribes to myPublication while sending in the ID as a parameter to the publication function
return [
Meteor.subscribe('myPublication', someId)
]
}
});
/server/publications.js
Meteor.publish('myPublication', function(id){
check(id, String);
return MyCollection.findOne({_id: id});
});
您现在可以访问您在此路线上订阅的数据。