0
私はユーザーを公開しています。もう1つのコレクションはjoboffersです。 joboffersコレクションには、雇用者と候補者のuserIdsが格納されます。私は管理者ページのために求職者の隣に表示する候補者名を取得したいと思いますが、私は何もしていないようです。すべての求人は表示されますが候補者名は表示されません。私のコンソールでは、私はちょうどオブジェクトを得る。this.userIdにはユーザーが表示されません
パス:publish.js
// publish all jobs for admin to view
Meteor.publish('allJobs', function() {
return JobOffers.find({});
});
Meteor.publish('allUsersWithJobs', function() {
var offers = JobOffers.find({}, {fields: {candidateUserId: 1}}).fetch();
var ids = _.pluck(offers, 'candidateUserId');
options = { fields: {username: 1, emails: 1, "profile.firstName": 1, "profile.familyName": 1 } };
return Meteor.users.find({ _id: { $in: ids } }, options);
});
パス:alljoboffers.js
Template.alljoboffers.onCreated(function() {
Meteor.subscribe("allJobs");
Meteor.subscribe("allUsersWithJobs");
});
Template.alljoboffers.helpers({
alljoboffers: function() {
return JobOffers.find({});
},
candidateName: function() {
console.log(this);
var user = this.userId;
var candidate = (user && user.profile && user.profile.firstName);
return candidate;
},
});
パス:alljoboffers.html
{{#each alljoboffers}}
{{positionTitle}}
{{#with candidateName}}
{{profile.firstName}}
{{/with}}
{{/each}}
おかげ@Hubert。私はそれをまったく気付かず、グローバルヘルパーの作成についての提案に感謝します。私はプロジェクトの始めにこれをやり遂げたかったのです。再度、感謝します! – bp123