Skip to content

zewa666/RedBean_ReBean

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 

RedBean_ReBean (RevisionBean)

This is a plugin for the RedBeanPHP ORM, which will be generating automatically revision tables for given Beans

This is achieved by creating a table named after your beantype plus the "revision" prefix. The table contains all the columns from your bean. Additionally it has a column "action" specifying if this revision was made by an [INSERT,UPDATE,DELETE] statement. Also inlcuded is the column "original_id" which represents the ID of the bean, that's been revisioned. Finally there is a "lastedit" column indicating when the change happend.

All the functionallity is achieved by using AFTER Triggers

Current status: The plugin so far works for Mysql, although not properly tested. Please use it just for testing and NOT IN PRODUCTION so far.

Update:

  • Now uses the R::ext plugin helper so you can access Revisioning without any previous instance creation. Just use R::createRevisionSupport($YOURBEAN);
  • Added PHPUnit Tests
  • Throw Exception if Bean is already under revision support

Usage:

  • Download the latest version of RedBean from Github or install via Composer.
  • Add the file ReBean.php to the RedBean/Plugin folder
  • Either manually require the file or see the RedBean instructions for building your on RB.php file
  • Create your first bean type
  • Store it in the DB (R::store($YOURBEAN))
  • Call the revision method like this
   R::createRevisionSupport($YOURBEAN);
  • Happy modifying of your previous Bean. You should be able to see all changes in the created revisiontable

Example:

Take a look at the included example.php.

About

Revision support for RedBeanPHP ORM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages