From 88671cab7f1c20dbfa8f6ded1827acd9e892cdbc Mon Sep 17 00:00:00 2001 From: Joseph Date: Tue, 29 May 2018 12:29:43 +0100 Subject: Revisions improvements (#77) * Support moving of revisions * Support removal of revisions upon page delete --- pysite/views/wiki/move.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'pysite/views/wiki/move.py') diff --git a/pysite/views/wiki/move.py b/pysite/views/wiki/move.py index 0d7985b4..9f898c43 100644 --- a/pysite/views/wiki/move.py +++ b/pysite/views/wiki/move.py @@ -56,6 +56,13 @@ class MoveView(RouteView, DBMixin): self.db.delete(self.table_name, page) + # Move all revisions for the old slug to the new slug. + revisions = self.db.filter(self.revision_table_name, lambda revision: revision["slug"] == obj["slug"]) + + for revision in revisions: + revision["slug"] = location + self.db.insert(self.revision_table_name, revision, conflict="update") + obj["slug"] = location self.db.insert(self.table_name, obj, conflict="update") -- cgit v1.2.3