       @trigger 'error', error
     else
       record = if @isNew() then @create() else @update()
-      @trigger 'save'
       record
 
   updateAttributes: (attributes) ->

    delete @constructor.records[@uid]
    @trigger 'destroy'
    @trigger 'change'
    @unbind()

  clone: ->
    Object.create @

  unbind: ->
    @trigger 'unbind'

  trigger: (args...) ->
    args.splice(1, 0, @.clone())

  @fields: (attributes...) ->
    @records    = {}
    @attributes = attributes or []
    @

  @create: (attributes) ->
