0

私はwhereBackboneコレクションで次のようなメソッドを使用しています:

var quote = app.Collections.quotes.where({Id: parseInt(id, 10)});

ただし、唯一の結果/モデルにアクセスするには(IDによるため、1つだけになります)-これを使用せずに実際のモデルを取得するにはどうすればよいですか?

var onlyModel = quote[0]

もっと良い方法はありますか?

4

2 に答える 2

1

より良い方法はget、コレクションで使用することです。http://backbonejs.org/#Collection-get

var quote = app.Collection.quotes.get(parseInt(id, 10));
于 2013-02-18T15:28:58.633 に答える
1

バックボーン プロキシ コレクションのアンダースコア関数と、特に見つかった最初の一致を返すfindWhere 。

findWhere _.findWhere(list, properties) リストを調べて、プロパティ
にリストされているすべてのキーと値のペアに一致する最初の値を返します。

クエリは次のように記述できます

var quote = app.Collections.quotes.findWhere({Id: parseInt(id, 10)});

しかし、あなたの場合、実際に特定の ID を持つモデルを探している場合は、getメソッドを直接使用できます

get collection.get(id)
id、cid、またはモデルを渡すことによって指定されたコレクションからモデルを取得します。

 var quote = app.Collection.quotes.get(id);
于 2013-02-18T15:32:47.233 に答える