   save: (base) ->
     # saveEvent is allowed but not fired, because base's storage op still needs to happen
     saveEvent = base.event('modelSaved')
+    saveEvent.prevent()
+
     model = base.get(@label)
     if model?.state() is "dirty"
       model.save (err, record) =>

    saveEvent = base.event('modelSaved')
    if relatedModels = base._batman.attributes?[@label]
      relatedModels.forEach (model) =>
        foreignKey = $functionName(base.constructor).toLowerCase() + "_id"
        model.set foreignKey, base.id



  save: (baseSaveError, base) ->
    saveEvent = base.event('modelSaved')
    saveEvent.prevent()

    if relatedModel = base._batman.attributes?[@label]
      foreignKey = $functionName(base.constructor).toLowerCase() + "_id"
      relatedModel.set foreignKey, base.id
