MojoMojo::Schema::Result::PageVersion3pm
Versioned page metadata
Overview
This table implements versioning of page metadata (not content, see MojoMojo::Schema::Result::Content for that). It has a composite primary key "(page, version)".
When renaming a page, a new version is created in this table, with "version" set to 1 + the maximum version for that "page". The "status" of the new "page_version" is set to "released", its "release_date" is set to "DateTime->now", while the old "page_version"'s status is set to 'removed' and its "remove_date" is set to "DateTime->now".
Todo
- •
-
document the relationships
- •
-
in order to support proper rollback, meaning creating a new version for the rollback operation itself, a
"content_version"field needs to be added.
- •
-
"created"is apparently unused: set to 0 for pages populated when creating the database, and NULL for all normal pages.
Methods
latest_version
Return the PageVersion object having the latest version of this page.
Releases
5 releases since Debian 6.0 (Squeeze); the text changed 4 times.