There's one more feature we're going to add to our application. We have a table of events, so why not add the ability to sort the rows by whichever field we click on?
First, we need to sort the models in the collection. You already know that when we make a collection object, we pass it an array of model objects. We can have the collection sort these upon creation, by adding a comparator to the Events
class. In models.js
, add the following line to the Events
collection class:
comparator: 'date',
Adding this line will sort the models in the collection by the date
field. This will sort the models initially added to the collection, and any models subsequently added. However, it will not re-sort the models after one of them has been changed. This is important because we want our table rows to reorder if necessary when we edit an event record. We can implement that rather easily. However, when we edit a model, it will emit a change
event, which bubbles up to the collection. We can...