Как получить доступ к paper_trails версии модели
Я строю вики на основе RoR. Мы используем paper_trail gem для управления версиями статьи, но просмотр изменений в статье с течением времени с помощью метода changeset является ужасным опытом для пользователя.
Лучшая идея, которую мы придумали, - это запрос комментария в стиле git-commit-message, прежде чем редактор сможет сохранить изменения. Эти сообщения фиксации будут прикреплены к версии статьи, которая создается при обновлении статьи.
Так как модель Version размещена в геме paper_trail, я не уверен, как связать таблицу Versions с моей новой таблицей commit_messages, а CommitMessage принадлежит_ версии.
1 ответ
[Я хочу] требовать комментарий в стиле git-commit-message, прежде чем редактор сможет сохранить изменения
Вы можете добавить comment
колонка к вашему versions
Таблица. PaperTrail называется "Хранение метаданных".
Метаданные от контроллеров
Вы также можете хранить любую информацию, которую вам нравится от вашего контроллера. Переопределить
info_for_paper_trail
метод в вашем контроллере, чтобы вернуть хеш, ключи которого соответствуют столбцам в вашемversions
Таблица.class ApplicationController def info_for_paper_trail { :ip => request.remote_ip, :user_agent => request.user_agent } end end
Если это не сработает, readme документирует другие способы хранения метаданных.