cborm-versioning

Version any orm entity for easy rollbacks

Installation

box install cborm-versioning

Usage

Automatic Versioning

If the entity has a verisioned attribute on the entities, the module will create a version of that entity. Installing registers an interceptor on all ORMPreInsert and ORMPreUpdate events to version entities.

Manual Versioning

You can also manually create a version. Doing so skips the check for the versioned attribute.

var versioner = wirebox.createInstance( "[email protected]" );
versioner.version( myEntity );

Restoring Entities from Versions

Once you have a version, restoring it to an entity is simple:

var version = entityNew( "[email protected]" ).get( id );
var restoredEntity = version.restore();
// then if you want this to be the new current version
restoredEntity.save();

Automatic Pruning of Old Versions

If you set a numeric value (n) for your versioned attribute (e.g. versioned="4" ), then the module will delete all versions in excess of n after creating a version. By default, cborm-versioning doesn't delete any versions.

 

 
$ box install cborm-versioning
No collaborators yet.
5.00 / 1
  • Mar 07 2017 08:16 AM
  • Oct 02 2017 11:27 AM
  • 838
  • 0
  • 912