iは、ポスト内のIDとして来る者は、そこにあるオブジェクトを、カテゴリ内の2つのコレクションコレクションAのアイテムのIDで参照されるコレクションBのアイテムのフィールドを表示するにはどうすればよいですか?
CategoryCollection = new Mongo.Collection("CategoryCollection");
usersWordpressCollection = new Mongo.Collection("usersWordpressCollection");
CategoryCollectionホールドポストを持っています。下の画像を見て、posts.authorにあなたの注意を引く
usersWordpressCollectionはそのID著者を保持している(下の画像を参照)posts.author
下categoryCollectionで参照されています私はポストを表示するとき、そのので、私はトンを得ることができますcategoryCollection
から来ます彼はそれがこれに来るときしかし、私は、返さないIDが、usersWordpressCollection
最新のhtmlで見つかっ参照著者の情報が欲しい、私はまた、著者IDを取得することができ、リンクなどを投稿
<template name="latest">
<ul>
{{#each articles}}
<li class=" home-latest ">
<span class="label"> <a class="" href="/catsingle/CategorySingle/{{_id}}">{{name}}</a></span>
{{#each posts}}
<div class="card">
<div class="category-img">{{{image}}}</div>
<div class="card-divider">
{{title}}
</div>
<div class="card-section">
<p>
{{> authors}}
</p>
</div>
</div>
</li>
{{/each}}
</ul>
</template>
最新のjs
HTMLTemplate.latest.helpers({
articles: function() {
var id = FlowRouter.getParam('_id');
return CategoryCollection.find({}, {sort: {date_created: -1}, limit:1}).fetch();
}
});
著者の
<template name="authors"> {{#each authors}} <p> {{name}} </p> {{/each}} </template>
著者のJS
Template.authors.helpers({
authors: function() {
var id = this.author;
console.log(id);
var alias = usersWordpressCollection.findOne(id, {fields: {name: 1} });
return alias.name;
console.log(alias.name);
});
あなたが見ることができるように、this.author
はcategoryCollection
posts.author
で見つかった著者IDです。私はidの投稿者と一致するusersWordpressCollection
を見つけようとしていますが、idが一致した投稿者のname field
を表示したいと思います。しかし、私はそれが動作するように見えない、どのように私はこれを達成することができます。
こんにちは@Michel、私はそれが働くように見えない、私は、これは影響を与えるだろうか? 'this.author'は整数である' id'にマッチさせようとしている文字列です。 1つは文字列、もう1つは整数、 –
次に 'id = parseInt(this.author)'を実行し、それを検索します。 –
私の知らないことは申し訳なく思っています。私は 'parseInt'が' this.author'を整数にしていることを理解していますが、 'id'は私が設定しなければならない変数ですか?コードはどこに行くの? @Michel –