             )
             return this
         )
+
+    # replace these models from other collection
+    copyFrom: (collection) ->
+        this.set(collection)
+
 
 }
 

## Override a few methods on the standard collection to ensure that
# models are fetched correctly and have the fk set when they're created
class Lanes.Models.AssociationCollection extends Lanes.Models.Collection
    constructor: (models, options) ->
        @model = options.model
        @associationFilter = options.filter
        super

    _prepareModel: (attrs, options = {}) ->
        model = super
        model.set(@associationFilter)
        model

    fetch: (options) ->
        options.query ||= {}
        _.extend(options.query, @associationFilter)
        super(options)

                    break
            break if found != -1
        found

    sum: ->
        args = _.toArray(arguments)
        args.unshift(this.models)
        return _.sum.apply(_, args)

    # convenience method to create a new subCollection
    subcollection: (options) ->
