最大の難関、Backboneのviewに結びつくmodelを入れ替えたい
viewのインスタンスを活かしつつ、viewに結びつくmodelを入れ替えられないかと調べたけど. どうもそれはできないらしい。 viewを消して、新しいviewを作るというのが定石のようです。
recreating-a-removed-view-in-backbone-js
ただ、removeしてしまうと、新しくviewを作った時に描写ができない、 でもって、ラッパーは消さずに、そこに足していくのが定石なのかな...
backbone-remove-view-deletes-the-el
まとめると、こんな感じかな。。
var View = Backbone.View.extend({ template: _.template( $("#add_record_template").html()), render: function(){ var value = this.template( this.model.toJSON()); this.$el.html(value); return this; } }); // bootstrap code view = new View({model: myModel}); $("#view_wrapper").append( view.render().$el ); // control view replace view.remove(); view = new View({model: myModel}); $("#view_wrapper").append( view.render().$el );