2016-04-26 8 views
0

誰かが正しい方向に私を指すことができるなら、私はそれを感謝します!私はcsvをmongoにアップロードしてから流星の中に公開するアプリを持っています。 Template.onCreatedで私はそれを購読していて、Template.helperでは、mongoカーソルを繰り返してテーブルに表示する値を取得しようとしています。mongoカーソルを繰り返して、Meteor Blazeのすべての値を一覧表示しますか?

Template.table.onCreated(function() { 
    Template.instance().subscribe('contacts'); 
}); 

Template.table.helpers({ 
    contact() { 
    var contactCursor = Contacts.find(); 
    return contactCursor; 
    } 
}); 

私はcursor.fetch()とマップしようとしましたが、レンダリングやクロムクラッシュはありません。私のテーブルには、次のようになります。

<tr> 
     <td> 
     {{#each contact}} 
      {{contact}} 
     {{/each}} 
     </td> 
    </tr> 

私はテーブルでレンダリングすることができたすべてが

[object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] [object Object] 

オア・ナッシングです。誰かが私を助けることができるなら、私は流星/火の新しさとカーソルを反復する方法を理解することはできません。 Mongoのコレクションは、次のようになります。

{ "_id" : "Mzb6a9uh3948vw", "contact" : [ { "emailAddress" : "[email protected]", "someContact" : "No", "creationDate" : "N/A", "bounceBack" : "N/A", "unsubscribed" : "N/A" } ] } 

私はテーブルにこのような何かをしたいと思います:

 {{#each cursor}} 
      {{emailAddress}} 
      {{someContact}} 
      {{createdDate}} 
      {{bounceBack}} 
      {{unsubscribed}} 
     {{/each}} 

THANKS

答えて

1

試してみてください。また

//helper 
contacts() { 
    var contactCursor = Contacts.find(); 
    return contactCursor; 
} 

//html 
{{#each contacts}} 
    {{#each contact}} 
     <p>email: {{emailAddress}</p> 
    {{/each}} 
{{/each}} 

、なぜあなたはそれを持っている必要がありますか

{ "_id" : "Mzb6a9uh3948vw", 
"contact" : [ { "emailAddress" : "[email protected]", "someContact" : "No", "creationDate" : "N/A", "bounceBack" : "N/A", "unsubscribed" : "N/A" } ] 
} 

代わりに:あなたは、あなたの連絡先コレクションに個別に連絡先を挿入し、Aを保存することで、それらを返すことができ

:EDIT

{{someContact}} //returns "No"{{emailAddress}} //returns "[email protected]"のようにあなたがそれらを使用することができ

"_id" : "Mzb6a9uh3948vw", 
"emailAddress" : "[email protected]", 
"someContact" : "No", 
//the rest 

それぞれに適切なIDを割り当てます。 1人のユーザーの連絡先を言うことができます。

Contacts.find({userId: Meteor.userId()}); 

あなたはまた、私はほとんどの場合では優れていると思うパブリケーションからそれを行うことができます:あなたはそれらのように戻るあなたのインサートにはuserIdを保存します。

+0

何も使用してレンダリングしていない '{{#each接触}}

メール:{{} contact.emailAddress

{{/各}}'。 mongoコレクションは、複数のオブジェクトを「連絡先」にプッシュする必要があったため、そのような構造になっています。 –

+0

@BrandonBaum連絡先を挿入する方法についてコードを記述した方が簡単な答えを書くのは簡単ですが、私は自分の答えを編集しました。 – Luna

0

contactヘルパーは、オブジェクトがcontactという名前の配列をネストしたカーソルを返します。あなたはまた、その配列を反復処理する必要があります。

{{#each contact}} 
    id: {{_id}} 
    {{#each this.contact}} 
    email address: {{emailAddress}} 
    some contact?: {{someContact}} 
    creation date: {{creationdate}} 
    bounce back: {{bounceBack}} 
    unsubscribed?: {{unsubscribed}} 
    {{/each}} 
{{/each}} 
関連する問題