質問

私は次のようにしてください。コレクションの人々のハッシュを持つ人のインスタンスは、モデルを追加します。それ以外の場合は、ハッシュが一致するモデルを更新してください。

$('.person').keyup(function(){

var myHash = $(this).attr('data-hash'),
 myName = $(this).val(),
 checkMe = people.where({'hash':myHash});

if ( checkMe.length > 0 ){

//update name value where hash matches

}

else {
 people.add({
   'name':myName,
   'hash':myHash
  });
}
});
.

personを使用する代わりに、バックボーンのvar person = new Personメソッドを使用してこれらのモデルをコレクションに追加しています。

だから私はaddを呼び出すときにいくつかの要素がありますが、それらの選択方法を理解することはできません。通常はpeople.modelsと言うが、モデルを選択する方法はわからない。person.get('attribute')の代わりにコードを入力できますか?

役に立ちましたか?

解決

チェックマーは、更新しようとしているモデルの配列であるべきです。それらを繰り返し、SETメソッドを使用します。

$('.person').keyup(function(){

var myHash = $(this).attr('data-hash'),
 myName = $(this).val(),
 checkMe = people.where({'hash':myHash});

if ( checkMe.length > 0 ){
  _.each(checkMe, function(person){
    person.set({
      'name':myName,
    });
  });
}

else {
 people.add({
   'name':myName,
   'hash':myHash
  });
}
});
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top