Model and View ReferencesIn general, when starting with Backbone it is advised to have a 1-1 correlation of models to views. Every Collection should have a “Collection View” which is simply a Backbone View. Taking a quote from the Backbone website you can see there are 3 distinct approaches people take to matching up Models and Views.
References between Models and Views can be handled several ways. Some people like to have direct pointers, where views correspond 1:1 with models (model.view and view.model). Others prefer to have intermediate “controller” objects that orchestrate the creation and organization of views into a hierarchy. Others still prefer the evented approach, and always fire events instead of calling methods directly. All of these styles work well.
- Every Backbone Collection should have a Collection View.
- Collection Views are just regular views that should render no HTML.
- The Collection View should listen to the add, remove, and reset Collection events.
- Views handle model events and DOM events to drive their behavior.
- In your view’s render() function you should “return this;” to enable chained calls.
- Provide a defaults object to your Backbone Model to make the model easier to understand.
View Event Options
- add - a model is added
- remove - a model is removed
- reset - reset or fetch is called on collection
Model and Collection Functions
- initialize - if provided it will be called when constructing the model