1

Todo リストの例でのタグの処理方法と、パーティの例での RSVPS の処理方法の両方を読んで、これを理解しようとしましたが、目標を達成するための一般的な方法を理解できませんでした。ownerid と excerciselist という名前のプラン コレクションがあります。

Plans.insert({name: names[i], ownerId: 1, excerciselist: excercises});

この Excerciselist に、未定義の Amout of Excercises を ID で追加します。私は次のExcercisecollectionを持っています:

Excercises.insert({名前: 名前[i]、筋肉: 筋肉[i]、デバイス: デバイス[i]、説明: 説明[i]});

現在、これらすべての Excercises には、デフォルトで一意の _id 要素があります。運動リストに何かを追加する問題はありません。プッシュでそれを行うことができます。しかし、私が理解できないのは、インデックスを介してエクササイズリスト内の特定の ID のみにアクセスする方法です。

Stringarray 全体にアクセスし、HTML で出力することしかできません。

{{#each planeray}} {{excerciselist}} {{/each}} しかし、{{ excerciselist }} のような平滑化を行う可能性はありません

また、エクササイスリストのみを平面レイに返すことも試みましたが、問題は、インデックス付けされているだけでマップされていないため、LiveHTML からアクセスできないことです。

この問題を解決する方法を知っている人はいますか?

4

2 に答える 2

0

Excersies インサートに一意の ID 用のフィールドを追加してみませんか?

Excercises.insert({ uniqueID: [i], name: names[i], muscle: muscles[i], device: devices[i], description: descriptions[i]});

このようにして、uniqueID フィールドに基づいて、必要な演習を取得できます。

ああ、おそらく「uniqueID」をもっと意味のあるものと呼ぶべきです。

于 2013-02-04T11:50:12.270 に答える
0

私が考えていたものとはまったく異なる小さな回避策を見つけましたが、それで仕事は完了しました。

  Template.editplan.excercises = function() {
    var names = [];
    var add = [];
    var adder = null;
    for(var i = 0; i < this.excerciselist.length; i++)
    {
      add[i] = [];
      adder = Excercises.find({_id: this.excerciselist[i]});
      add[i]['_id'] = this.excerciselist[i];
      add[i]['location'] = i;
      adder.forEach(function (obj) {
        add[i]['name'] = obj.name;
      });
      names.push(add[i]);
    }
    return names;
  };

基本的に、必要なデータを入れる新しい配列を作成したので、LiveHTMLで読み取ることができます。以下の例を参照してください

{{#each planarray}}
        <h1>{{name}}</h1>
        {{#each excercises}}
        {{name}}
        {{/each}}
        <select name="selectedexcercise{{_id}}" id="selectedexcercise{{_id}}">
            {{> excerciseoption}}
        </select>
        <input type="button" class="addtoplan" value="Eine Übung hinzfügen">
    {{/each}}

しかし、もっと効率的で良い方法があるに違いありません....少なくとも私はそう願っています!

于 2013-02-21T14:20:57.957 に答える