     url: ->
         @model::urlRoot()
 
-    sync: ->
-        Lanes.Data.Sync.apply(this,arguments)
+    sync: Lanes.Data.Sync
+
+    save: (options)->
+        Lanes.Data.Sync('update', this, options)
+
+    dataForSave: (options)->
+        unsaved = []
+        for model in @models
+            unsaved.push( model.unsavedData() ) if model.isDirty()
+        unsaved
 
     _prepareModel: (attrs, options={})->
         options.collection = this;

            callback()

    isDirty: ->
        false

    parse:(resp)->

        @errors=[]
        Lanes.Vendor.Ampersand.Collection.apply(this, arguments)

    @fetch: (options)->
        collection = new this
        collection.fetch(options)
        collection
        
    fetch: (options={})->
        @isLoaded = true
        wrapRequest(this,options)
        super(options).then => @

    isLoaded:->
        @isLoaded

    ensureLoaded: ( callback )->
        if ! @isLoaded && ! this.length
