У меня есть модель для многоязычного веб-сайта с функциональностью вики, которая содержит различные поля, которые я хочу иметь версионными, однако мне нужно отменить изменения, внесенные в некоторые столбцы, но не в другие.
Например, я храню английскую и испанскую версии письменного руководства для каждого экземпляра модели.
Представьте себе:
- Пользователь A редактирует испанское руководство и добавляет ненормативную лексику
- Пользователь B позже редактирует руководство на английском языке и вносит полезные изменения.
Обычно управление версиями означает, что отмена изменений, внесенных пользователем A, также отменит более поздние изменения пользователя B, несмотря на тот факт, что в моем случае это две отдельные проблемы.
Так что мне нужно, по сути, иметь ограниченную историю версий. Например, используя papertrail:
#guide.rb
has_paper_trail :only => [:en_title, :en_body]
has_paper_trail :only => [:es_title, :es_body]
Есть ли самое простое решение для этого? Я действительно не хочу перемещать моих гидов в отдельные модели с отношениями один-к-одному только для достижения этой цели.