コレクション内の動的に作成されたモデルを選択する
-
12-12-2019 - |
質問
私は次のようにしてください。コレクションの人々のハッシュを持つ人のインスタンスは、モデルを追加します。それ以外の場合は、ハッシュが一致するモデルを更新してください。
$('.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
});
}
});
. 所属していません StackOverflow