Каков наилучший способ хранения моделей ActiveRecord с версиями и их связей с версиями? - PullRequest
2 голосов
/ 09 июня 2009

Если все, что у меня есть, - это одна модель (например, Wiki), и я хочу сохранить ее вместе с ее версиями, я мог бы использовать плагин acts_as_versioned, который сохраняет вики в таблице "wikis", а ее версии в таблице "wikis_versions". Это довольно просто, даже если я хочу модерировать последнюю версию, прежде чем показывать ее широкой публике, используя поле в качестве статуса с «ожидающим рассмотрением / опубликованным».

Как лучше всего обрабатывать вики с помощью ассоциаций (например, вложений, ресурсов и т. Д.), Которые также имеют версии? И как бы вы модерировали это? Создаете ли вы новую версию для вики, даже если изменяется только ее ассоциация, чтобы сохранить поток, если да, то как насчет других ассоциаций?

Какой лучший способ справиться с этим с небольшими накладными расходами?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 11 июня 2009

Я использовал оба act_as_versioned и acts_as_audited.

Я предпочитаю последний, потому что он использует одну таблицу. При использовании activ_as_versioned у нас возникли проблемы с изменениями в версионных таблицах, требующих дополнительных миграций => это добавляет дополнительную сложность нашему процессу сборки и развертывания.

0 голосов
/ 09 июня 2009

У Ричарда Ливси есть хороший плагин для этого, который работает с acts_as_versioned.

http://github.com/rlivsey/acts_as_versioned_association/tree/master

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...