       view = @views[model.cid]
       if view
         current = view.$el.index()
-        if model.index != current
+        if current == -1 or model.index != current
           el = @getListElement().children().eq(model.index)
-          el.before(view.$el.detach())
+          if el.length > 0
+            el.before(view.$el)
+          else
+            @getListElement().append(view.$el)
 
   empty: () ->
     @getListElement().empty()

      @empty()
      @updateFilters()
    @listenTo @collection, "sort", ->
      @sort()
    @listenTo @collection, "request", =>
      @listMeta.set({state: "loading"})
      @showAlerts()

    return null

  _added: (model, container, sIndex) ->
    if not container
      container = @getListElement().get(0)

