Реализация истории версий с помощью схемы таблицы замыканий
У меня есть собственная реализация CMS, которая хранит узлы контента в двух таблицах, как описано в разделе "Таблица закрытий" по адресу http://www.slideshare.net/billkarwin/models-for-hierarchical-data и использую этот драгоценный камень https://github.com/mceachen/closure_tree под Ruby on Rails 3 и MySQL.
Пришло время реализовать историю версий, в которой любое изменение в дереве контента (редактирование, вставка, перемещение, удаление узлов и т. Д.) Приведет к созданию новой версии корневого узла (публикации). И пользователи смогут просматривать старые версии и возвращаться к ним. Действие отмены создаст более новую версию, которая является копией отмененной.
Есть ли известный способ достичь этого? или у кого-нибудь есть идея или пример реализации для такого рода вещей?
Любой вклад будет оценен.
1 ответ
Государственные машины? Мне любопытно, если есть еще идеи. Я точно знаю, что есть блестящее решение, но оно выходит за рамки Rails. Это система управления документами. Первое, что я бы порекомендовал, это Alfresco .