1
我有一個應用程序使用流量路由器及其酒吧/次機制。我也有一個集合和模板助手。該代碼是,在客戶端如何在Meteor中通過任意屬性找到一個集合項,但不能找到_id?
Template.theCase.helpers({
theCase: function() {
var id = FlowRouter.getParam('id');
var theCase = Cases.findOne({
id: id
});
return theCase;
}
});
和
{{#with theCase}}
{{ id }}
{{/with}}
然後,在服務器
Meteor.publish('theCase', function (id) {
return Cases.findOne({
id: id
});
});
,最後,在兩個(lib
)
FlowRouter.route('/case/:id', {
subscriptions: function (params) {
this.register('theCase', Meteor.subscribe('theCase', params.id));
},
action: function (params, queryParams) {
return BlazeLayout.render('container');
}
});
的問題,正如我所看到的那樣,這是一種幫助r返回undefined
,因爲不允許通過_id
以外的任何其他屬性查找集合中的項目。我如何克服它?我讀過一些關於pub/sub,helpers和routing的官方文檔,但我找不到解決方案。有什麼建議麼?
我遇到的問題是,正是因爲我想使用定製身份而不是mongo生成的'_id'。我有一個實質上是一個數字的屬性,它會增加。我知道這可能是反模式,但這正是我攻擊的問題。 –
有可能有使用身份證的原因。這不是問題。我剛剛編輯了我的答案。我建議打印日誌以查看您實際期望找到的內容。 –
我發現你的出版物有問題,並編輯我的回答 –