aboutsummaryrefslogtreecommitdiffstats
path: root/pysite/views/wiki/move.py
diff options
context:
space:
mode:
authorGravatar Gareth Coles <[email protected]>2018-05-29 16:48:13 +0100
committerGravatar Gareth Coles <[email protected]>2018-05-29 16:48:13 +0100
commit8e7945f5a7f809184d272691b43678eac54715e5 (patch)
tree9c4fb852a7f0369ff4cf01571b44fb44e4111576 /pysite/views/wiki/move.py
parentAddress input given in contrib channel, and add FAQ (diff)
parentRevisions improvements (#77) (diff)
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'pysite/views/wiki/move.py')
-rw-r--r--pysite/views/wiki/move.py7
1 files changed, 7 insertions, 0 deletions
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")