Backbone (Marionette as well) trying to display a new record at the start of a collection, without re - rendering the whole collection

In Marionette, the default way to add a new item to a collection in the views, is to use jQuery's append method. The CollectionView type has a method called appendHtml which is used to do the actual appending. (see http://derickbailey.github.com/backbone.marionette/docs/backbone.marionette.html#section-24 )

You can easily override this method in your specific collection view, though, and have the new model appended wherever it needs to go.

In your case, if you are always wanting to prepend the new model to the top of the list, it's very trivial to change your collection view to do this:

Backbone.Marionette.CollectionView.extend({
  appendHtml: function(cv, iv){
    cv.$el.prepend(iv.el);
  }
});

Note that cv is the collection view instance and iv is the item view instance for the model in the collection.

If you need to do more complicated things like find an exact position in the existing collection of HTML nodes, you can do that within the appendHtml function as well. Of course this gets more complicated than just doing a prepend instead of an append, but it's still possible.

Hope that helps.