私は Backbone.js を学習中です。見ているものが気に入っていますが、何かがはっきりしていません... 既にページにあるデータを処理する最善の方法は何ですか? それらすべてを調べて、それぞれのモデルを作成することをお勧めします。
$('element').each(function() {
var model = new Model();
collection.add(model);
});
または、ページをロードしてから、データを取得してそこから処理する必要があります。
または、これを行うためのより良い方法はありますか?
編集
サーバー側の場合、データをループしてページでブートストラップします
サーバ側
<div>
<p>{{ model.someInformation }}</p>
</div>
新しいモデルを直接インスタンス化する必要がありますか?
<script>
Backbone.Model.extend({
var model = new Model();
});
</script>
ブートストラップhttp://backbonejs.org/#FAQ-bootstrapでコレクションのリセットについて読みましたが、得られないものがあるようです...コレクションにモデルを追加する必要があると思いました。私のモデルは、コレクションの用途がどこかでインスタンス化されましreset
た...私はここで少し迷っています。
編集 2
私は自分のアプリを次のように動作させることができました:
$('#active-cards .card').each(function(i) {
window['card' + i] = new Card(),
window['cardView' + i] = new CardView({ el: $(this) });
id = $(this).attr('id'),
name = $(this).find('input[name="name"]').val(),
client = $(this).find('input[name="client"]').val(),
field = $(this).find('input[name="field"]').val();
window['card' + i].set({ id: id, name: name, client: client, field: field });
cards.add(window['card' + i]);
});
この後、次のようにしてモデルを見つけることができます
var id = this.$el.attr('id');
var card = cards.get(id);